ABCF->ab-angle angle

Time bar (total: 7.7s)

start0.0ms (0%)

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

analyze72.0ms (0.9%)

Memory
-2.4MiB live, 87.4MiB allocated; 8ms 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
50%49.9%49.9%0.1%0%0%0%3
50%49.9%49.9%0.1%0%0%0%4
50%49.9%49.9%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
75%74.9%25%0.1%0%0%0%7
75%74.9%25%0.1%0%0%0%8
87.5%87.4%12.5%0.1%0%0%0%9
87.5%87.4%12.5%0.1%0%0%0%10
87.5%87.4%12.5%0.1%0%0%0%11
93.8%93.6%6.2%0.1%0%0%0%12
Compiler

Compiled 25 to 20 computations (20% saved)

sample2.5s (32.5%)

Memory
51.6MiB live, 2 214.8MiB allocated; 321ms collecting garbage
Samples
832.0ms5 575×0valid
736.0ms1 622×2valid
353.0ms1 059×1valid
Precisions
Click to see histograms. Total time spent on operations: 1.5s
ival-pow2: 288.0ms (18.9% of total)
adjust: 286.0ms (18.8% of total)
ival-sub: 220.0ms (14.4% of total)
ival-div: 205.0ms (13.5% of total)
ival-mult: 180.0ms (11.8% of total)
ival-atan: 120.0ms (7.9% of total)
ival-sqrt: 100.0ms (6.6% of total)
ival-add: 79.0ms (5.2% of total)
ival-pi: 29.0ms (1.9% of total)
exact: 7.0ms (0.5% of total)
ival-true: 6.0ms (0.4% of total)
ival-assert: 3.0ms (0.2% of total)
Bogosity

explain389.0ms (5%)

Memory
-5.2MiB live, 517.0MiB allocated; 111ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1450-0-(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
280-0-(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))
230-1(6.082001619328737e-144 1.6758000091187903e-180 2.8943842392658376e-39)(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
20-2(5.314243539378278e-38 -2.0946864162426869e-153 1.930359865924452e+160)(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
00-0-A
00-0-#s(literal 1 binary64)
00-0-C
00-0-(-.f64 A C)
00-0-(PI.f64)
00-0-(pow.f64 B #s(literal 2 binary64))
00-0-(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))
00-0-(-.f64 C A)
00-0-(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
00-0-#s(literal 180 binary64)
00-0-(pow.f64 (-.f64 A C) #s(literal 2 binary64))
00-0-#s(literal 2 binary64)
00-0-(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
00-0-B
00-0-(/.f64 #s(literal 1 binary64) B)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))oflow-rescue1390
(pow.f64 B #s(literal 2 binary64))overflow58
(pow.f64 (-.f64 A C) #s(literal 2 binary64))overflow99
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))overflow139
-.f64(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))cancellation280
*.f64(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))n*u220
sqrt.f64(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))uflow-rescue60
(pow.f64 B #s(literal 2 binary64))underflow68
(pow.f64 (-.f64 A C) #s(literal 2 binary64))underflow16
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))underflow6
Confusion
Predicted +Predicted -
+1210
-4788
Precision
0.7202380952380952
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+12100
-47088
Precision?
0.7202380952380952
Recall?
1.0
Freqs
test
numberfreq
088
1141
227
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
125.0ms356×0valid
52.0ms112×2valid
13.0ms44×1valid
Compiler

Compiled 303 to 61 computations (79.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 148.0ms
ival-pi: 43.0ms (29.1% of total)
ival-mult: 37.0ms (25% of total)
ival-sub: 14.0ms (9.5% of total)
adjust: 14.0ms (9.5% of total)
ival-pow2: 14.0ms (9.5% of total)
ival-div: 10.0ms (6.8% of total)
ival-sqrt: 6.0ms (4.1% of total)
ival-atan: 6.0ms (4.1% of total)
ival-add: 3.0ms (2% of total)
exact: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess316.0ms (4.1%)

Memory
-37.7MiB live, 222.1MiB allocated; 84ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079219
1158199
2329199
3700199
41847199
57730199
01923
03223
14621
27321
314721
438721
5156021
6650921
0807916
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)))
Compiler

Compiled 23 to 19 computations (17.4% saved)

eval0.0ms (0%)

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

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
57.9%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 23 to 19 computations (17.4% saved)

simplify141.0ms (1.8%)

Memory
-11.5MiB live, 120.3MiB allocated; 23ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
cost-diff1
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))
cost-diff2
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
cost-diff4
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
019138
032138
146130
273130
3147130
4387130
51560130
66509130
0807999
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) B)
#s(literal 1 binary64)
B
(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))
(-.f64 C A)
C
A
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))
(pow.f64 (-.f64 A C) #s(literal 2 binary64))
(-.f64 A C)
#s(literal 2 binary64)
(pow.f64 B #s(literal 2 binary64))
(PI.f64)
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)))
#s(literal 180 binary64)
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
(atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
(/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)
(/.f64 #s(literal 1 binary64) B)
(pow.f64 B #s(literal -1 binary64))
#s(literal 1 binary64)
B
(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))
(-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A)
(-.f64 C A)
C
A
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
(hypot.f64 (-.f64 A C) B)
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))
(fma.f64 B B (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(pow.f64 (-.f64 A C) #s(literal 2 binary64))
(-.f64 A C)
#s(literal 2 binary64)
(pow.f64 B #s(literal 2 binary64))
(*.f64 B B)
(PI.f64)

localize88.0ms (1.1%)

Memory
4.2MiB live, 109.6MiB allocated; 23ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
accuracy4.734646502097589
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
accuracy6.4738330593867435
(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))
accuracy33.67376033044734
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
Samples
46.0ms56×2valid
22.0ms178×0valid
6.0ms22×1valid
Compiler

Compiled 140 to 21 computations (85% saved)

Precisions
Click to see histograms. Total time spent on operations: 59.0ms
adjust: 26.0ms (43.8% of total)
ival-mult: 9.0ms (15.1% of total)
ival-pow2: 6.0ms (10.1% of total)
ival-sub: 5.0ms (8.4% of total)
ival-div: 5.0ms (8.4% of total)
ival-sqrt: 3.0ms (5% of total)
ival-atan: 3.0ms (5% of total)
ival-add: 2.0ms (3.4% of total)
ival-pi: 1.0ms (1.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series32.0ms (0.4%)

Memory
3.9MiB live, 46.3MiB allocated; 14ms collecting garbage
Counts
5 → 127
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))
Outputs
(sqrt (+ (pow B 2) (pow C 2)))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(+ (pow B 2) (pow C 2))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
A
(* A (+ 1 (* -1 (/ C A))))
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(pow A 2)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(* -2 A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* -1 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(* 1/2 (/ (pow B 2) A))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(- A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(pow (- A C) 2)
(+ (pow B 2) (pow (- A C) 2))
(- (* 2 C) (* 2 A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
B
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
-1
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(pow B 2)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(* -1 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(sqrt (+ (pow A 2) (pow B 2)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (pow A 2) (pow B 2))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
C
(* C (+ 1 (* -1 (/ A C))))
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(pow C 2)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(* -1 (+ A (* -1 A)))
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(* -1 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(* 2 C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
Calls

9 calls:

TimeVariablePointExpression
10.0ms
B
@inf
((sqrt (+ (pow (- A C) 2) (pow B 2))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+ (pow (- A C) 2) (pow B 2)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
3.0ms
A
@0
((sqrt (+ (pow (- A C) 2) (pow B 2))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+ (pow (- A C) 2) (pow B 2)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
3.0ms
A
@inf
((sqrt (+ (pow (- A C) 2) (pow B 2))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+ (pow (- A C) 2) (pow B 2)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
3.0ms
C
@-inf
((sqrt (+ (pow (- A C) 2) (pow B 2))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+ (pow (- A C) 2) (pow B 2)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
2.0ms
C
@inf
((sqrt (+ (pow (- A C) 2) (pow B 2))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+ (pow (- A C) 2) (pow B 2)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))

simplify186.0ms (2.4%)

Memory
-7.7MiB live, 177.3MiB allocated; 40ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06293038
121012844
085402522
Stop Event
iter limit
node limit
Counts
127 → 124
Calls
Call 1
Inputs
(sqrt (+ (pow B 2) (pow C 2)))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(+ (pow B 2) (pow C 2))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
A
(* A (+ 1 (* -1 (/ C A))))
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(pow A 2)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(* -2 A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* -1 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(* 1/2 (/ (pow B 2) A))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(- A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(pow (- A C) 2)
(+ (pow B 2) (pow (- A C) 2))
(- (* 2 C) (* 2 A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
B
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
-1
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(pow B 2)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(* -1 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(sqrt (+ (pow A 2) (pow B 2)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (pow A 2) (pow B 2))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
C
(* C (+ 1 (* -1 (/ A C))))
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(pow C 2)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(* -1 (+ A (* -1 A)))
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(* -1 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(* 2 C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
Outputs
(sqrt (+ (pow B 2) (pow C 2)))
(hypot.f64 B C)
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(fma.f64 (*.f64 A (neg.f64 C)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) (hypot.f64 B C))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) A) (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (neg.f64 C))) A (hypot.f64 B C))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) A) (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (neg.f64 C)) (*.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 B B (*.f64 C C)) #s(literal 3 binary64)))) (*.f64 C A)) (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C)))))) (*.f64 #s(literal 1/2 binary64) A))) A (hypot.f64 B C))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(/.f64 (-.f64 C (hypot.f64 B C)) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) #s(literal 1 binary64)) (neg.f64 B)) A (/.f64 (-.f64 C (hypot.f64 B C)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (/.f64 A B)) (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 B C)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (*.f64 A #s(literal -1/2 binary64)) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 B B (*.f64 C C)) #s(literal 3 binary64)))) (*.f64 C A)) (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))))) B) (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 B C)) B))
(+ (pow B 2) (pow C 2))
(fma.f64 B B (*.f64 C C))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (*.f64 B B))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (fma.f64 B B (*.f64 A A)))
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)) (PI.f64)) #s(literal 180 binary64))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 C (hypot.f64 B C))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 C (fma.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) #s(literal 1 binary64)) A (hypot.f64 B C)))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) A) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))))) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) #s(literal 1 binary64))) A (-.f64 C (hypot.f64 B C)))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 B B (*.f64 C C)) #s(literal 3 binary64)))) (*.f64 C A)) (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 B B (*.f64 C C))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C))))))) A) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 C C)))) #s(literal 1 binary64))) A (-.f64 C (hypot.f64 B C)))
A
(* A (+ 1 (* -1 (/ C A))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 C A)) A)
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) C) A)) A)
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B A) (/.f64 B A) (*.f64 (*.f64 B B) (/.f64 C (pow.f64 A #s(literal 3 binary64))))) (-.f64 #s(literal 1 binary64) (/.f64 C A))) A)
(* -2 (/ A B))
(*.f64 (/.f64 A B) #s(literal -2 binary64))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 (/.f64 C A) B) (fma.f64 (/.f64 (/.f64 C A) B) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (-.f64 (/.f64 (/.f64 C A) B) (fma.f64 (/.f64 (/.f64 C A) B) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B)))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 B (*.f64 A A)) (*.f64 B (/.f64 C (pow.f64 A #s(literal 3 binary64))))) (-.f64 (/.f64 (/.f64 C A) B) (fma.f64 (/.f64 (/.f64 C A) B) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B)))) A)
(pow A 2)
(*.f64 A A)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(*.f64 (*.f64 (fma.f64 (/.f64 C A) #s(literal -2 binary64) #s(literal 1 binary64)) A) A)
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(*.f64 (+.f64 (/.f64 (/.f64 (fma.f64 B B (*.f64 C C)) A) A) (fma.f64 (/.f64 C A) #s(literal -2 binary64) #s(literal 1 binary64))) (*.f64 A A))
(* -2 A)
(*.f64 #s(literal -2 binary64) A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(*.f64 (-.f64 (/.f64 C A) (-.f64 #s(literal 2 binary64) (/.f64 C A))) A)
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(*.f64 (-.f64 (/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) C) A) (-.f64 #s(literal 2 binary64) (/.f64 C A))) A)
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) B) B) (/.f64 C (pow.f64 A #s(literal 3 binary64))) (-.f64 (/.f64 C A) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) C) A)))) A)
(* -1 A)
(neg.f64 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(*.f64 (neg.f64 A) (-.f64 #s(literal 1 binary64) (/.f64 C A)))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) C) A)) (neg.f64 A))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(neg.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 (fma.f64 B (*.f64 B (/.f64 C A)) (*.f64 B B)) A) (neg.f64 C)) A) A A))
(* 1/2 (/ B A))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A)
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))) (*.f64 B A)) (*.f64 B C))) (neg.f64 A))) (neg.f64 A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) C) B (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) C) (pow.f64 B #s(literal 4 binary64)) (*.f64 (neg.f64 C) (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))))) (*.f64 B A)) (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))) B))) (neg.f64 A))) (neg.f64 A))) (neg.f64 A))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(*.f64 (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) C (/.f64 (fma.f64 B B (*.f64 C C)) (neg.f64 A))) A)) A) A)
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64)) #s(literal 180 binary64))
(* 1/2 (/ (pow B 2) A))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(*.f64 #s(literal 1/2 binary64) (/.f64 (fma.f64 B (*.f64 B (/.f64 C A)) (*.f64 B B)) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) B) B (/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))) A) (*.f64 (*.f64 B B) C))) A)) (neg.f64 A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) B) B (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) C) (*.f64 B B) (/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) C) (pow.f64 B #s(literal 4 binary64)) (*.f64 (neg.f64 C) (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))))) A) (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))))) A)) (neg.f64 A))) (neg.f64 A))
(- A C)
(-.f64 A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (-.f64 A C)) B) B (-.f64 A C))
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (-.f64 A C))
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(fma.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 (-.f64 A C) #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (-.f64 A C))
(/ (- (* 2 C) (* 2 A)) B)
(*.f64 #s(literal 2 binary64) (/.f64 (-.f64 C A) B))
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/.f64 (fma.f64 (*.f64 B (/.f64 B (-.f64 A C))) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) B) B (/.f64 #s(literal -1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 B (/.f64 B (pow.f64 (-.f64 A C) #s(literal 5 binary64)))) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(pow (- A C) 2)
(pow.f64 (-.f64 A C) #s(literal 2 binary64))
(+ (pow B 2) (pow (- A C) 2))
(fma.f64 B B (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(- (* 2 C) (* 2 A))
(*.f64 #s(literal 2 binary64) (-.f64 C A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(fma.f64 (*.f64 B (/.f64 B (-.f64 A C))) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) B) B (/.f64 #s(literal -1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 B (/.f64 B (pow.f64 (-.f64 A C) #s(literal 5 binary64)))) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
B
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(fma.f64 (*.f64 B #s(literal 1/2 binary64)) (/.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) B) B)
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 (*.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 B #s(literal 4 binary64)))) B B)
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 6 binary64)) (pow.f64 B #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 (*.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 B #s(literal 4 binary64))))) B B)
-1
#s(literal -1 binary64)
(- (/ C B) (+ 1 (/ A B)))
(-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
(pow B 2)
(*.f64 B B)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(*.f64 (+.f64 (/.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) B) #s(literal 1 binary64)) (*.f64 B B))
(* -1 B)
(neg.f64 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))) B)
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))) (*.f64 (/.f64 #s(literal 1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B))) B)
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(*.f64 (neg.f64 B) (fma.f64 (/.f64 #s(literal 1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal 1 binary64)))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(*.f64 (neg.f64 B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal 1 binary64))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 6 binary64)) (pow.f64 B #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 (*.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 B #s(literal 4 binary64))))) B B))
1
#s(literal 1 binary64)
(- (+ 1 (/ C B)) (/ A B))
(+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal -1/2 binary64) (neg.f64 (-.f64 C A))) B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (neg.f64 (-.f64 C A)) (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) #s(literal 1/2 binary64))) B)) B))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(*.f64 (-.f64 (/.f64 (neg.f64 (-.f64 C A)) B) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(*.f64 (-.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal 1/2 binary64) (-.f64 C A)) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(*.f64 (-.f64 (/.f64 (-.f64 (-.f64 C (/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 #s(literal -1/2 binary64) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))) B)) A) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(sqrt (+ (pow A 2) (pow B 2)))
(hypot.f64 B A)
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(fma.f64 (*.f64 C (neg.f64 A)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (hypot.f64 B A))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) C) (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (neg.f64 A))) C (hypot.f64 B A))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) C) (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (neg.f64 A)) (*.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 B B (*.f64 A A)) #s(literal 3 binary64)))) (*.f64 C A)) (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A)))))) (*.f64 #s(literal 1/2 binary64) C))) C (hypot.f64 B A))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (/.f64 A B) (/.f64 #s(literal 1 binary64) B)) C (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (/.f64 C B)) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (/.f64 A B) (/.f64 #s(literal 1 binary64) B))) C (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (*.f64 C #s(literal -1/2 binary64)) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 B B (*.f64 A A)) #s(literal 3 binary64)))) (*.f64 C A)) (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))))) B) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (/.f64 A B) (/.f64 #s(literal 1 binary64) B))) C (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
(+ (pow A 2) (pow B 2))
(fma.f64 B B (*.f64 A A))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) C A) A (*.f64 B B))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (fma.f64 B B (*.f64 A A)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(neg.f64 (+.f64 (hypot.f64 B A) A))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) A #s(literal 1 binary64)) C) (+.f64 (hypot.f64 B A) A))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) C) (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (neg.f64 A)))) C) (+.f64 (hypot.f64 B A) A))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 B B (*.f64 A A)) #s(literal 3 binary64)))) (*.f64 C A)) (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 B B (*.f64 A A))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A))))))) C (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 B B (*.f64 A A)))) A #s(literal 1 binary64))) C) (+.f64 (hypot.f64 B A) A))
C
(* C (+ 1 (* -1 (/ A C))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A C)) C)
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 B (/.f64 B C)) #s(literal -1/2 binary64) A) C)) C)
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B C) (/.f64 B C) (*.f64 (*.f64 B B) (/.f64 A (pow.f64 C #s(literal 3 binary64))))) (-.f64 #s(literal 1 binary64) (/.f64 A C))) C)
(* -1 (/ (+ A (* -1 A)) B))
(/.f64 #s(literal 0 binary64) B)
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 C #s(literal 3 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 A) A) B) B (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))) B) (/.f64 #s(literal 0 binary64) B)))
(pow C 2)
(*.f64 C C)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(*.f64 (*.f64 (fma.f64 (/.f64 A C) #s(literal -2 binary64) #s(literal 1 binary64)) C) C)
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(*.f64 (+.f64 (/.f64 (/.f64 (fma.f64 B B (*.f64 A A)) C) C) (fma.f64 (/.f64 A C) #s(literal -2 binary64) #s(literal 1 binary64))) (*.f64 C C))
(* -1 (+ A (* -1 A)))
#s(literal 0 binary64)
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(fma.f64 (*.f64 B (/.f64 B C)) #s(literal -1/2 binary64) #s(literal 0 binary64))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) A) (*.f64 (/.f64 B C) (/.f64 B C))) (fma.f64 (*.f64 B (/.f64 B C)) #s(literal 1/2 binary64) #s(literal 0 binary64)))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(-.f64 (*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 A) A) B) B (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/4 binary64))) (pow.f64 C #s(literal 3 binary64))) #s(literal 1/2 binary64)) (fma.f64 #s(literal 1/2 binary64) (/.f64 (fma.f64 B B (*.f64 A (*.f64 B (/.f64 B C)))) C) #s(literal 0 binary64)))
(* -1 C)
(neg.f64 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(*.f64 (neg.f64 C) (-.f64 #s(literal 1 binary64) (/.f64 A C)))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(*.f64 (neg.f64 C) (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 B (/.f64 B C)) #s(literal -1/2 binary64) A) C)))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(neg.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 (fma.f64 B B (*.f64 A (*.f64 B (/.f64 B C)))) C) (neg.f64 A)) C) C C))
(* 2 (/ C B))
(*.f64 (/.f64 C B) #s(literal 2 binary64))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 #s(literal 2 binary64) C) (/.f64 A B) (/.f64 #s(literal -2 binary64) B)))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 (fma.f64 (/.f64 B C) #s(literal 1/2 binary64) (*.f64 (/.f64 A B) #s(literal -2 binary64))) C) #s(literal -1 binary64) (/.f64 #s(literal -2 binary64) B)))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(*.f64 (neg.f64 C) (-.f64 (/.f64 (fma.f64 (/.f64 A B) #s(literal -2 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 A C) B)) C)) (neg.f64 C)) (/.f64 #s(literal 2 binary64) B)))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(*.f64 (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) A (/.f64 (fma.f64 B B (*.f64 A A)) (neg.f64 C))) C)) C) C)
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64)) #s(literal 180 binary64))
(* 2 C)
(*.f64 #s(literal 2 binary64) C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 A C) #s(literal 2 binary64) #s(literal -2 binary64)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 (fma.f64 (*.f64 B (/.f64 B C)) #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) A)) C) #s(literal -1 binary64) #s(literal -2 binary64)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 (fma.f64 B B (*.f64 A (*.f64 B (/.f64 B C)))) C) (*.f64 #s(literal -2 binary64) A)) C) #s(literal -1 binary64) #s(literal -2 binary64)))

rewrite68.0ms (0.9%)

Memory
1.4MiB live, 108.0MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01974
03274
112670
091548
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
5 → 111
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
(-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))
Outputs
(*.f64 (pow.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 A C) #s(literal 3 binary64)) (pow.f64 B #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 A C) B) #s(literal 2 binary64))) (pow.f64 (-.f64 A C) #s(literal 4 binary64)))))
(sqrt.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (-.f64 A C)) (fabs.f64 B))
(hypot.f64 (neg.f64 (-.f64 A C)) (exp.f64 (log.f64 B)))
(hypot.f64 (neg.f64 (-.f64 A C)) (neg.f64 B))
(hypot.f64 (neg.f64 (-.f64 A C)) B)
(hypot.f64 (fabs.f64 B) (neg.f64 (-.f64 A C)))
(hypot.f64 (fabs.f64 B) (fabs.f64 (-.f64 A C)))
(hypot.f64 (fabs.f64 B) (exp.f64 (log.f64 (-.f64 A C))))
(hypot.f64 (fabs.f64 B) (-.f64 A C))
(hypot.f64 (fabs.f64 (-.f64 A C)) (fabs.f64 B))
(hypot.f64 (fabs.f64 (-.f64 A C)) (exp.f64 (log.f64 B)))
(hypot.f64 (fabs.f64 (-.f64 A C)) (neg.f64 B))
(hypot.f64 (fabs.f64 (-.f64 A C)) B)
(hypot.f64 (exp.f64 (log.f64 B)) (neg.f64 (-.f64 A C)))
(hypot.f64 (exp.f64 (log.f64 B)) (fabs.f64 (-.f64 A C)))
(hypot.f64 (exp.f64 (log.f64 B)) (exp.f64 (log.f64 (-.f64 A C))))
(hypot.f64 (exp.f64 (log.f64 B)) (-.f64 A C))
(hypot.f64 (exp.f64 (log.f64 (-.f64 A C))) (fabs.f64 B))
(hypot.f64 (exp.f64 (log.f64 (-.f64 A C))) (exp.f64 (log.f64 B)))
(hypot.f64 (exp.f64 (log.f64 (-.f64 A C))) (neg.f64 B))
(hypot.f64 (exp.f64 (log.f64 (-.f64 A C))) B)
(hypot.f64 (neg.f64 B) (neg.f64 (-.f64 A C)))
(hypot.f64 (neg.f64 B) (fabs.f64 (-.f64 A C)))
(hypot.f64 (neg.f64 B) (exp.f64 (log.f64 (-.f64 A C))))
(hypot.f64 (neg.f64 B) (-.f64 A C))
(hypot.f64 B (neg.f64 (-.f64 A C)))
(hypot.f64 B (fabs.f64 (-.f64 A C)))
(hypot.f64 B (exp.f64 (log.f64 (-.f64 A C))))
(hypot.f64 B (-.f64 A C))
(hypot.f64 (-.f64 A C) (fabs.f64 B))
(hypot.f64 (-.f64 A C) (exp.f64 (log.f64 B)))
(hypot.f64 (-.f64 A C) (neg.f64 B))
(hypot.f64 (-.f64 A C) B)
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) (pow.f64 B #s(literal -1 binary64)))
(*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))))
(*.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))) (pow.f64 B #s(literal -1 binary64))) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64))) (pow.f64 B #s(literal -1 binary64))) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C)))) (neg.f64 B))
(/.f64 (*.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) #s(literal -1 binary64)) (neg.f64 B))
(/.f64 (*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))))
(/.f64 (*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)))) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C)))) (neg.f64 B))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))) #s(literal -1 binary64)) (*.f64 (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (neg.f64 B)))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) B))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))) (neg.f64 B)))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))) B))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))) (*.f64 (neg.f64 B) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C))))))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)))) (*.f64 (neg.f64 B) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))) (*.f64 B (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C))))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)))) (*.f64 B (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)
(*.f64 (neg.f64 (hypot.f64 B (-.f64 A C))) (neg.f64 (hypot.f64 B (-.f64 A C))))
(*.f64 (fabs.f64 (hypot.f64 B (-.f64 A C))) (fabs.f64 (hypot.f64 B (-.f64 A C))))
(*.f64 (hypot.f64 B (-.f64 A C)) (hypot.f64 B (-.f64 A C)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) #s(literal 1 binary64))
(/.f64 (-.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 (-.f64 A C) #s(literal 4 binary64))) (-.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B))))
(/.f64 (neg.f64 (+.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 (-.f64 A C) #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 A C) B) #s(literal 2 binary64))) (pow.f64 (-.f64 A C) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) (-.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B)))
(/.f64 (+.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 (-.f64 A C) #s(literal 6 binary64))) (+.f64 (pow.f64 B #s(literal 4 binary64)) (-.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 A C) B) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 (-.f64 A C) #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 A C) B) #s(literal 2 binary64))) (pow.f64 (-.f64 A C) #s(literal 4 binary64))))
(fma.f64 (neg.f64 (-.f64 A C)) (neg.f64 (-.f64 A C)) (*.f64 B B))
(fma.f64 (fabs.f64 B) (fabs.f64 B) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (-.f64 A C)) (fabs.f64 (-.f64 A C)) (*.f64 B B))
(fma.f64 (exp.f64 (log.f64 B)) (exp.f64 (log.f64 B)) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (-.f64 A C))) (exp.f64 (log.f64 (-.f64 A C))) (*.f64 B B))
(fma.f64 (neg.f64 B) (neg.f64 B) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(fma.f64 B B (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(fma.f64 (-.f64 A C) (-.f64 A C) (*.f64 B B))
(sqrt.f64 (*.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (-.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B))) (/.f64 (pow.f64 B #s(literal 4 binary64)) (-.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B))))
(-.f64 (*.f64 B B) (*.f64 (neg.f64 (-.f64 A C)) (-.f64 A C)))
(-.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 (neg.f64 B) B))
(+.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 A C) B) #s(literal 2 binary64))) (pow.f64 (-.f64 A C) #s(literal 4 binary64)))) (/.f64 (pow.f64 B #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 A C) B) #s(literal 2 binary64))) (pow.f64 (-.f64 A C) #s(literal 4 binary64)))))
(+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) B)) #s(literal 180 binary64)) (PI.f64))
(*.f64 (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 C C) (*.f64 (+.f64 (hypot.f64 B (-.f64 A C)) A) (+.f64 (hypot.f64 B (-.f64 A C)) A))) (+.f64 C (+.f64 (hypot.f64 B (-.f64 A C)) A)))
(/.f64 (-.f64 (pow.f64 C #s(literal 3 binary64)) (pow.f64 (+.f64 (hypot.f64 B (-.f64 A C)) A) #s(literal 3 binary64))) (fma.f64 C C (fma.f64 (+.f64 (hypot.f64 B (-.f64 A C)) A) (+.f64 (hypot.f64 B (-.f64 A C)) A) (*.f64 C (+.f64 (hypot.f64 B (-.f64 A C)) A)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))) (neg.f64 (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)))) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C))))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)))) (*.f64 #s(literal 2 binary64) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64))) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))))
(/.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64))) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C))))) (/.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 2 binary64)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C))))))
(-.f64 (/.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 B (-.f64 A C)) #s(literal 3 binary64)) (fma.f64 (hypot.f64 B (-.f64 A C)) (-.f64 C (-.f64 A (hypot.f64 B (-.f64 A C)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(-.f64 (-.f64 C A) (hypot.f64 B (-.f64 A C)))
(-.f64 C (+.f64 (hypot.f64 B (-.f64 A C)) A))

eval44.0ms (0.6%)

Memory
-0.4MiB live, 43.9MiB allocated; 8ms collecting garbage
Compiler

Compiled 8 455 to 1 768 computations (79.1% saved)

prune19.0ms (0.2%)

Memory
7.1MiB live, 52.0MiB allocated; 6ms collecting garbage
Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New21717234
Fresh000
Picked101
Done000
Total21817235
Accuracy
99.6%
Counts
235 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
55.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 C C))))))) (PI.f64)))
56.4%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
26.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))))) (PI.f64)))
52.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64)))
24.7%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
32.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
68.2%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64)))
68.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
32.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
15.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
52.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
49.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
22.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
27.3%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
22.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
21.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
24.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Compiler

Compiled 1 032 to 794 computations (23.1% saved)

simplify156.0ms (2%)

Memory
-3.2MiB live, 143.5MiB allocated; 37ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))))
cost-diff0
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
cost-diff2
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
cost-diff1
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
cost-diff2
(/.f64 #s(literal 0 binary64) B)
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056670
091658
1146613
2248613
3428613
41143613
56588613
08880526
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
(/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))
(+.f64 (hypot.f64 B A) A)
(hypot.f64 B A)
B
A
(neg.f64 B)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
#s(literal -1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
(/.f64 B A)
B
A
#s(literal 1/2 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(/.f64 B C)
B
C
#s(literal -1/2 binary64)
(/.f64 #s(literal 0 binary64) B)
#s(literal 0 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
(/.f64 #s(literal 1 binary64) B)
#s(literal 1 binary64)
B
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))
(-.f64 C A)
C
A
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))
(fma.f64 B B (*.f64 A A))
(*.f64 A A)
(PI.f64)
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))
(/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))
(+.f64 (hypot.f64 B A) A)
(+.f64 (hypot.f64 A B) A)
(hypot.f64 B A)
(hypot.f64 A B)
B
A
(neg.f64 B)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
#s(literal -1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 #s(literal 1/2 binary64) A) B))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 #s(literal 1/2 binary64) A) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 #s(literal 1/2 binary64) A) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 #s(literal 1/2 binary64) A) B))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
(*.f64 (/.f64 #s(literal 1/2 binary64) A) B)
(/.f64 B A)
B
A
#s(literal 1/2 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(*.f64 #s(literal -1/2 binary64) (/.f64 B C))
(/.f64 B C)
B
C
#s(literal -1/2 binary64)
(/.f64 #s(literal 0 binary64) B)
#s(literal 0 binary64)
#s(literal 0 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B))))) B)))
#s(literal 180 binary64)
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B))))) B)) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B))))) B))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
(/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B))))) B)
(/.f64 #s(literal 1 binary64) B)
#s(literal 1 binary64)
B
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B)))))
(-.f64 C A)
C
A
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 A A (*.f64 B B)))
(fma.f64 B B (*.f64 A A))
(fma.f64 A A (*.f64 B B))
(*.f64 A A)
(PI.f64)

localize196.0ms (2.5%)

Memory
7.3MiB live, 239.4MiB allocated; 43ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy4.734646502097589
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
accuracy6.4738330593867435
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))
accuracy16.155161898608775
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))
accuracy33.67376033044734
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))
accuracy0.00390625
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
accuracy52.52570329865646
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
accuracy0.0
(PI.f64)
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
accuracy52.075427975280455
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
accuracy0.0
(PI.f64)
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
accuracy49.82135942513141
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
accuracy3.9876137560363274
(/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))
accuracy6.631746017101488
(+.f64 (hypot.f64 B A) A)
accuracy18.052504749881894
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
Samples
64.0ms47×2valid
43.0ms14×3valid
42.0ms170×0valid
13.0ms25×1valid
Compiler

Compiled 536 to 37 computations (93.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 130.0ms
ival-div: 41.0ms (31.6% of total)
adjust: 26.0ms (20% of total)
ival-sqrt: 19.0ms (14.6% of total)
ival-mult: 12.0ms (9.2% of total)
ival-hypot: 9.0ms (6.9% of total)
ival-pow2: 7.0ms (5.4% of total)
ival-add: 6.0ms (4.6% of total)
ival-sub: 5.0ms (3.9% of total)
ival-atan: 3.0ms (2.3% of total)
ival-pi: 1.0ms (0.8% of total)
exact: 1.0ms (0.8% of total)
ival-neg: 1.0ms (0.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series33.0ms (0.4%)

Memory
11.4MiB live, 56.3MiB allocated; 14ms collecting garbage
Counts
27 → 172
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
(/.f64 #s(literal 0 binary64) B)
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))))
(+.f64 (hypot.f64 B A) A)
(/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))
(PI.f64)
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))
Outputs
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
B
(+ A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
-1
(- (* -1 (/ A B)) 1)
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(sqrt (+ (pow B 2) (pow C 2)))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(+ (pow B 2) (pow C 2))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* 2 A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
A
(* A (+ 1 (* -1 (/ C A))))
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(pow A 2)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(* -2 A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1/2 (/ (pow B 2) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(* -1 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(* 1/2 (/ (pow B 2) A))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
0
(* -1/2 (/ B C))
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(- A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(pow (- A C) 2)
(+ (pow B 2) (pow (- A C) 2))
(- (* 2 C) (* 2 A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(* B (+ 1 (/ A B)))
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(pow B 2)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(* -1 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(+ 1 (* -1 (/ A B)))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(sqrt (+ (pow A 2) (pow B 2)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(+ (pow A 2) (pow B 2))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
C
(* C (+ 1 (* -1 (/ A C))))
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(pow C 2)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(* -1 (+ A (* -1 A)))
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* -1 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(* 2 C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
Calls

9 calls:

TimeVariablePointExpression
10.0ms
B
@inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ 0 B) (+ (* (/ B C) -1/2) (/ 0 B)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (PI) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
4.0ms
A
@0
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ 0 B) (+ (* (/ B C) -1/2) (/ 0 B)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (PI) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
3.0ms
B
@0
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ 0 B) (+ (* (/ B C) -1/2) (/ 0 B)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (PI) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
2.0ms
A
@-inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ 0 B) (+ (* (/ B C) -1/2) (/ 0 B)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (PI) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))
2.0ms
B
@-inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ 0 B) (+ (* (/ B C) -1/2) (/ 0 B)) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (PI) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))

simplify161.0ms (2.1%)

Memory
21.8MiB live, 212.0MiB allocated; 33ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08033880
126733706
084503327
Stop Event
iter limit
node limit
Counts
172 → 169
Calls
Call 1
Inputs
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
B
(+ A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
-1
(- (* -1 (/ A B)) 1)
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(sqrt (+ (pow B 2) (pow C 2)))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(+ (pow B 2) (pow C 2))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* 2 A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
A
(* A (+ 1 (* -1 (/ C A))))
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(pow A 2)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(* -2 A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1/2 (/ (pow B 2) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(* -1 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(* 1/2 (/ (pow B 2) A))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
0
(* -1/2 (/ B C))
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(- A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(pow (- A C) 2)
(+ (pow B 2) (pow (- A C) 2))
(- (* 2 C) (* 2 A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(* B (+ 1 (/ A B)))
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(pow B 2)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(* -1 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(+ 1 (* -1 (/ A B)))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(sqrt (+ (pow A 2) (pow B 2)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(+ (pow A 2) (pow B 2))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
C
(* C (+ 1 (* -1 (/ A C))))
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(pow C 2)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(* -1 (+ A (* -1 A)))
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* -1 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(* 2 C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
Outputs
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)) (PI.f64)) #s(literal 180 binary64))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)) (PI.f64))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 A (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B)) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 A (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) B) #s(literal -1/2 binary64) (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) B)) A (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
B
(+ A B)
(+.f64 A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 A A) (pow.f64 B #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) B)) A #s(literal 1 binary64)) A B)
-1
#s(literal -1 binary64)
(- (* -1 (/ A B)) 1)
(-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (/.f64 A (*.f64 B B)) #s(literal -1/2 binary64)) (/.f64 #s(literal 1 binary64) B)) A) #s(literal 1 binary64))
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 A A)) (pow.f64 B #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) (*.f64 B B))) A) (/.f64 #s(literal 1 binary64) B)) A) #s(literal 1 binary64))
(sqrt (+ (pow B 2) (pow C 2)))
(hypot.f64 C B)
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(fma.f64 A (*.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))) (hypot.f64 C B))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) A) (neg.f64 C))) A (hypot.f64 C B))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))))) A (*.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) A (hypot.f64 C B))
(+ (pow B 2) (pow C 2))
(fma.f64 C C (*.f64 B B))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (*.f64 B B))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) C A) A (fma.f64 C C (*.f64 B B)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 C (hypot.f64 C B))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 (fma.f64 (neg.f64 A) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) C) (hypot.f64 C B))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 A (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) #s(literal -1/2 binary64)) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64))) A C) (hypot.f64 C B))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))))) A) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64))) A C) (hypot.f64 C B))
(* -2 (/ A B))
(*.f64 #s(literal -2 binary64) (/.f64 A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 C (*.f64 A B)) (fma.f64 (/.f64 C (*.f64 A B)) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (-.f64 (/.f64 C (*.f64 A B)) (fma.f64 (/.f64 C (*.f64 A B)) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B)))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 B (*.f64 A A)) (*.f64 B (/.f64 C (pow.f64 A #s(literal 3 binary64))))) (/.f64 C (*.f64 A B))) (fma.f64 (/.f64 C (*.f64 A B)) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B))) A)
(* 2 A)
(*.f64 #s(literal 2 binary64) A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) #s(literal 2 binary64)) A)
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) #s(literal 2 binary64))) A)
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 B #s(literal 6 binary64))) (pow.f64 A #s(literal 6 binary64)))) A)
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 A A)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(*.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 B #s(literal 3 binary64))) (pow.f64 A #s(literal 4 binary64)))) (/.f64 #s(literal 2 binary64) B)) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 A #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 B #s(literal 3 binary64))) (pow.f64 A #s(literal 4 binary64))))) (/.f64 #s(literal 2 binary64) B)) A)
A
(* A (+ 1 (* -1 (/ C A))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 C A)) A)
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) (-.f64 #s(literal 1 binary64) (/.f64 C A))) A)
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B A) (/.f64 B A) (*.f64 (*.f64 B B) (/.f64 C (pow.f64 A #s(literal 3 binary64))))) (-.f64 #s(literal 1 binary64) (/.f64 C A))) A)
(pow A 2)
(*.f64 A A)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(*.f64 (fma.f64 (/.f64 C A) #s(literal -2 binary64) #s(literal 1 binary64)) (*.f64 A A))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(*.f64 (+.f64 (/.f64 (fma.f64 C C (*.f64 B B)) (*.f64 A A)) (fma.f64 (/.f64 C A) #s(literal -2 binary64) #s(literal 1 binary64))) (*.f64 A A))
(* -2 A)
(*.f64 #s(literal -2 binary64) A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(*.f64 (-.f64 (/.f64 C A) (-.f64 #s(literal 2 binary64) (/.f64 C A))) A)
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 (*.f64 B B) A) (-.f64 (/.f64 C A) (-.f64 #s(literal 2 binary64) (/.f64 C A)))) A)
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 B B) (/.f64 C (pow.f64 A #s(literal 3 binary64)))) #s(literal -1/2 binary64) (-.f64 (/.f64 C A) (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) (-.f64 #s(literal 2 binary64) (/.f64 C A))))) A)
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64)) #s(literal 180 binary64))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B))
(* 1/2 (/ B A))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 B (/.f64 C A) B)) (neg.f64 A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (*.f64 A B)) (*.f64 C B))) (neg.f64 A))) (neg.f64 A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) B) C (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 B #s(literal 4 binary64))) C (*.f64 (neg.f64 C) (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) (*.f64 A B)) (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) B))) (neg.f64 A))) (neg.f64 A))) (neg.f64 A))
(* -1/2 (/ (pow B 2) A))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (*.f64 #s(literal 1/2 binary64) (*.f64 B B))) (neg.f64 A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (fma.f64 (/.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 B B)))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 B #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 A #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (fma.f64 (/.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 B B))))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (*.f64 #s(literal -1/2 binary64) B)) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/16 binary64) (*.f64 #s(literal -1/2 binary64) B))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 A #s(literal 6 binary64))) (/.f64 (*.f64 (pow.f64 B #s(literal 8 binary64)) #s(literal 5/64 binary64)) B) (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 B #s(literal 5 binary64))) (pow.f64 A #s(literal 4 binary64)))))) (neg.f64 A))
(* -1 A)
(neg.f64 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(*.f64 (neg.f64 A) (-.f64 #s(literal 1 binary64) (/.f64 C A)))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) C) A)) (neg.f64 A))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 C (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (/.f64 (*.f64 (*.f64 B B) C) A))) A)) A)) (neg.f64 A))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) C (/.f64 (fma.f64 C C (*.f64 B B)) (neg.f64 A))) A)) (*.f64 A A))
(* 1/2 (/ (pow B 2) A))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (/.f64 (*.f64 (*.f64 B B) C) A))) A)
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) A) (*.f64 (*.f64 B B) C))) A) #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 B B))) (neg.f64 A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 B #s(literal 4 binary64))) C (*.f64 (neg.f64 C) (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) A) (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) A) #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 B B)) C)) A) #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 B B))) (neg.f64 A))
(/ (- (* 2 C) (* 2 A)) B)
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 C A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/.f64 (fma.f64 (/.f64 (*.f64 B B) (-.f64 A C)) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
0
#s(literal 0 binary64)
(* -1/2 (/ B C))
(*.f64 (/.f64 B C) #s(literal -1/2 binary64))
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(fma.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 A #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal 2 binary64) A))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 B B)) (pow.f64 A #s(literal 5 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal 2 binary64) A))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) A)) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 A #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(/.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 A #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)) B)
(- A C)
(-.f64 A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(-.f64 (fma.f64 (/.f64 (*.f64 B B) (-.f64 A C)) #s(literal 1/2 binary64) A) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(-.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) A) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(-.f64 (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 B B)) (pow.f64 (-.f64 A C) #s(literal 5 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) A) C)
(pow (- A C) 2)
(pow.f64 (-.f64 A C) #s(literal 2 binary64))
(+ (pow B 2) (pow (- A C) 2))
(fma.f64 B B (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(- (* 2 C) (* 2 A))
(*.f64 #s(literal 2 binary64) (-.f64 C A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(fma.f64 (/.f64 (*.f64 B B) (-.f64 A C)) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
(- (/ C B) (+ 1 (/ A B)))
(-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (/.f64 C B))) (+.f64 (/.f64 A B) #s(literal 1 binary64)))
(* B (+ 1 (/ A B)))
(fma.f64 (/.f64 A B) B B)
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(fma.f64 (fma.f64 (/.f64 (*.f64 A A) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 A B)) B B)
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 A #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 A A) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 A B))) B B)
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (*.f64 A A) B) (/.f64 (neg.f64 A) B)) #s(literal 1 binary64))
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(-.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (*.f64 A A) B) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64)))) (/.f64 A B)) #s(literal 1 binary64))
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) #s(literal 1 binary64)) B)
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64)))) B B)
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 6 binary64)) (pow.f64 B #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64))))) B B)
(pow B 2)
(*.f64 B B)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(*.f64 (+.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B)) #s(literal 1 binary64)) (*.f64 B B))
(* -1 B)
(neg.f64 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))) B)
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (-.f64 (-.f64 (/.f64 C B) #s(literal 1 binary64)) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 A B)))) B)
1
#s(literal 1 binary64)
(- (+ 1 (/ C B)) (/ A B))
(+.f64 #s(literal 1 binary64) (/.f64 (-.f64 C A) B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal -1/2 binary64) (neg.f64 (-.f64 C A))) B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (neg.f64 (-.f64 C A)) (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 #s(literal 1/2 binary64) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))) B)) B))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A B)) (neg.f64 B))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 A A) B) #s(literal -1/2 binary64) A) B)) (neg.f64 B))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 A #s(literal 4 binary64)) B) (*.f64 (*.f64 A A) #s(literal 1/2 binary64))) B)) B)) (neg.f64 B))
(+ 1 (* -1 (/ A B)))
(-.f64 #s(literal 1 binary64) (/.f64 A B))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 A A) B) #s(literal -1/2 binary64) A) B))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 A #s(literal 4 binary64)) B) (*.f64 (*.f64 A A) #s(literal 1/2 binary64))) B)) B))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(*.f64 (neg.f64 B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) #s(literal 1 binary64)))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(*.f64 (neg.f64 B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) #s(literal 1 binary64))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 6 binary64)) (pow.f64 B #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64))))) B B))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(*.f64 (-.f64 (/.f64 (neg.f64 (-.f64 C A)) B) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(*.f64 (-.f64 (/.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal 1/2 binary64) C) A) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(*.f64 (-.f64 (/.f64 (-.f64 (-.f64 C (/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 #s(literal -1/2 binary64) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))) B)) A) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (+.f64 (/.f64 #s(literal 1 binary64) B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 C (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))))) B) #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1 binary64) B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B)))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))))) B)) C (+.f64 (/.f64 #s(literal 1 binary64) B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B)))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(sqrt (+ (pow A 2) (pow B 2)))
(hypot.f64 A B)
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(-.f64 (hypot.f64 A B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (*.f64 A C)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) C) (neg.f64 A))) C (hypot.f64 A B))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B))))))) C (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (neg.f64 A))) C (hypot.f64 A B))
(+ (pow A 2) (pow B 2))
(fma.f64 A A (*.f64 B B))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(fma.f64 (*.f64 #s(literal -2 binary64) A) C (fma.f64 A A (*.f64 B B)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (fma.f64 A A (*.f64 B B)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(neg.f64 (+.f64 (hypot.f64 A B) A))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) A)) C) (+.f64 (hypot.f64 A B) A))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) C) (neg.f64 A)))) C) (+.f64 (hypot.f64 A B) A))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B))))))) C (+.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) A))) C) (+.f64 (hypot.f64 A B) A))
(* -1 (/ (+ A (* -1 A)) B))
(/.f64 #s(literal 0 binary64) B)
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 A (/.f64 B (*.f64 C C)) (/.f64 B C)) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 A (/.f64 B (*.f64 C C)) (/.f64 B C)) (fma.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 A A) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (*.f64 (pow.f64 C #s(literal 3 binary64)) B)) #s(literal 1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
C
(* C (+ 1 (* -1 (/ A C))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A C)) C)
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) C) (/.f64 (*.f64 B B) C) (-.f64 #s(literal 1 binary64) (/.f64 A C))) C)
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B C) (/.f64 B C) (/.f64 (*.f64 (*.f64 B B) A) (pow.f64 C #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (/.f64 A C))) C)
(pow C 2)
(*.f64 C C)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(*.f64 (fma.f64 (/.f64 A C) #s(literal -2 binary64) #s(literal 1 binary64)) (*.f64 C C))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(*.f64 (+.f64 (/.f64 (fma.f64 A A (*.f64 B B)) (*.f64 C C)) (fma.f64 (/.f64 A C) #s(literal -2 binary64) #s(literal 1 binary64))) (*.f64 C C))
(* -1 (+ A (* -1 A)))
#s(literal 0 binary64)
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(fma.f64 (/.f64 (*.f64 B B) C) #s(literal -1/2 binary64) #s(literal 0 binary64))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(-.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) C) (*.f64 A (/.f64 (*.f64 B B) C))) (fma.f64 (/.f64 (*.f64 B B) C) #s(literal 1/2 binary64) #s(literal 0 binary64)))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(-.f64 (*.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 A A) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (pow.f64 C #s(literal 3 binary64))) #s(literal 1/2 binary64)) (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 (*.f64 B B) C) (/.f64 A C) (/.f64 (*.f64 B B) C)) #s(literal 0 binary64)))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64)) #s(literal 180 binary64))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B)))
(* 2 (/ C B))
(*.f64 (/.f64 C B) #s(literal 2 binary64))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(*.f64 (neg.f64 C) (-.f64 (*.f64 (/.f64 (/.f64 A B) C) #s(literal 2 binary64)) (/.f64 #s(literal 2 binary64) B)))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(*.f64 (neg.f64 C) (-.f64 (/.f64 (fma.f64 (/.f64 B C) #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) (/.f64 A B))) (neg.f64 C)) (/.f64 #s(literal 2 binary64) B)))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(*.f64 (neg.f64 C) (-.f64 (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 A B) (/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 A (/.f64 B C) B)) (neg.f64 C))) (neg.f64 C)) (/.f64 #s(literal 2 binary64) B)))
(* -1 C)
(neg.f64 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(*.f64 (neg.f64 C) (-.f64 #s(literal 1 binary64) (/.f64 A C)))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(*.f64 (neg.f64 C) (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) C) #s(literal -1/2 binary64) A) C)))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(*.f64 (neg.f64 C) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (*.f64 A (/.f64 (*.f64 B B) C)))) C)) C)))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) A (/.f64 (fma.f64 A A (*.f64 B B)) (neg.f64 C))) C)) (*.f64 C C))
(* 2 C)
(*.f64 #s(literal 2 binary64) C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 A C) #s(literal 2 binary64) #s(literal -2 binary64)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 (fma.f64 (/.f64 (*.f64 B B) C) #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) A)) C) #s(literal -1 binary64) #s(literal -2 binary64)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
(*.f64 (neg.f64 C) (fma.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (*.f64 A (/.f64 (*.f64 B B) C)))) C) (*.f64 #s(literal 2 binary64) A)) C) #s(literal -1 binary64) #s(literal -2 binary64)))

rewrite53.0ms (0.7%)

Memory
-38.4MiB live, 65.1MiB allocated; 27ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056588
091578
0292496
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
27 → 59
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
(/.f64 #s(literal 0 binary64) B)
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))))
(+.f64 (hypot.f64 B A) A)
(/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B))
(PI.f64)
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))
Outputs
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))))) (PI.f64))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))) (PI.f64))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
#s(literal 0 binary64)
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))) #s(literal 0 binary64)) (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) #s(literal 0 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) #s(literal 0 binary64)))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) #s(literal 0 binary64))
(+.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 B C)) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64)))) (PI.f64))
(*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64)))
(*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))) B)
(*.f64 (/.f64 (atan.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64))))) (PI.f64))
(/.f64 (neg.f64 (atan.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64)))) (PI.f64))
(atan.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))) (pow.f64 B #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 A B) (hypot.f64 A B)) (*.f64 A A)) (-.f64 (hypot.f64 A B) A))
(/.f64 (+.f64 (pow.f64 (hypot.f64 A B) #s(literal 3 binary64)) (pow.f64 A #s(literal 3 binary64))) (fma.f64 (hypot.f64 A B) (hypot.f64 A B) (-.f64 (*.f64 A A) (*.f64 (hypot.f64 A B) A))))
(+.f64 (hypot.f64 A B) A)
(+.f64 A (hypot.f64 A B))
(/.f64 (neg.f64 (+.f64 (hypot.f64 A B) A)) (neg.f64 (neg.f64 B)))
(/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))
(neg.f64 (/.f64 (+.f64 (hypot.f64 A B) A) B))
(+.f64 (/.f64 (hypot.f64 A B) (neg.f64 B)) (/.f64 A (neg.f64 B)))
(PI.f64)
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64)))
(pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))
(/.f64 (-.f64 (*.f64 (-.f64 C A) (-.f64 C A)) (*.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))) (+.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))
(/.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))) #s(literal 3 binary64))) (fma.f64 (-.f64 C A) (-.f64 C A) (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))) (*.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))
(-.f64 C (+.f64 A (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))

eval38.0ms (0.5%)

Memory
14.0MiB live, 58.6MiB allocated; 8ms collecting garbage
Compiler

Compiled 9 977 to 1 663 computations (83.3% saved)

prune21.0ms (0.3%)

Memory
-2.6MiB live, 43.0MiB allocated; 5ms collecting garbage
Pruning

19 alts after pruning (17 fresh and 2 done)

PrunedKeptTotal
New22110231
Fresh5712
Picked325
Done000
Total22919248
Accuracy
99.6%
Counts
248 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
24.7%
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
27.3%
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
56.4%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))) B)) (PI.f64)))
55.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
32.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
68.2%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
32.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
34.9%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
26.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
15.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
49.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
22.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
27.3%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
22.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
42.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
38.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
24.7%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
21.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
24.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Compiler

Compiled 1 214 to 918 computations (24.4% saved)

simplify134.0ms (1.7%)

Memory
-8.4MiB live, 139.5MiB allocated; 34ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060806
094806
1156766
2290766
3554766
41385766
55277766
08444611
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(-.f64 C (hypot.f64 C B))
C
(hypot.f64 C B)
B
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
#s(literal 1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
#s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
(-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))
(/.f64 (neg.f64 A) B)
(neg.f64 A)
A
B
#s(literal 1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
(+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(/.f64 (-.f64 C A) B)
(-.f64 C A)
C
A
B
#s(literal 1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B))
(fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)
(fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/.f64 A B)
A
B
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(neg.f64 B)
(PI.f64)
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(-.f64 C (hypot.f64 C B))
C
(hypot.f64 C B)
B
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
#s(literal 1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
#s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
(-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))
(/.f64 (neg.f64 A) B)
(neg.f64 A)
A
B
#s(literal 1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))
(+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64))
(/.f64 (-.f64 C A) B)
(-.f64 C A)
C
A
B
#s(literal 1 binary64)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B))
(fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)
(fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64))
(/.f64 A B)
A
B
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(neg.f64 B)
(PI.f64)

localize208.0ms (2.7%)

Memory
31.9MiB live, 271.1MiB allocated; 18ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
accuracy3.9876137560363274
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))
accuracy18.052504749881894
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))
accuracy45.308581836136256
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B))
accuracy0.00390625
(/.f64 (-.f64 C A) B)
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
accuracy44.83088928951105
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
accuracy18.052504749881894
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
accuracy40.33806789745637
#s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
accuracy0.0
(PI.f64)
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
accuracy51.884953265334055
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
accuracy3.7279388583491238
(/.f64 (-.f64 C (hypot.f64 C B)) B)
accuracy5.489483202891725
(-.f64 C (hypot.f64 C B))
accuracy19.192127824535515
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
Samples
68.0ms24×3valid
52.0ms163×0valid
40.0ms40×2valid
18.0ms29×1valid
Compiler

Compiled 547 to 38 computations (93.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 133.0ms
adjust: 51.0ms (38.4% of total)
ival-hypot: 20.0ms (15.1% of total)
ival-div: 20.0ms (15.1% of total)
ival-mult: 10.0ms (7.5% of total)
ival-sub: 8.0ms (6% of total)
ival-add: 8.0ms (6% of total)
ival-pow2: 7.0ms (5.3% of total)
ival-sqrt: 3.0ms (2.3% of total)
ival-atan: 3.0ms (2.3% of total)
ival-neg: 2.0ms (1.5% of total)
ival-pi: 1.0ms (0.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series27.0ms (0.4%)

Memory
-44.3MiB live, 54.2MiB allocated; 11ms collecting garbage
Counts
27 → 130
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))
(-.f64 C (hypot.f64 C B))
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(PI.f64)
#s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
(/.f64 (-.f64 C A) B)
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))
Outputs
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
-1
(- (* -1 (/ A B)) 1)
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(/ C B)
(+ (* -1 (/ A B)) (/ C B))
B
(+ A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(* -1 (/ A B))
(* A (- (/ C (* A B)) (/ 1 B)))
(* 2 A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(* -1 (* A (+ (* -1 (/ C (* A B))) (/ 1 B))))
(* -1/2 (/ (pow B 2) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(* -1/2 (/ (pow B 2) C))
(* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* (pow B 2) (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* -1/2 (/ B C))
(* B (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(/ (- C A) B)
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(* -1 B)
(* B (- (/ C B) 1))
(* B (- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1))
(* B (- (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B)) (+ 1 (* 1/2 (/ (pow C 2) (pow B 2))))))
(- (/ C B) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B))) 1)
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(* B (+ 1 (/ A B)))
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (- (* -1 (/ C B)) 1)))
(* -1 (* B (- (* -1 (/ (+ C (* 1/2 (/ (pow C 2) B))) B)) 1)))
(* -1 (* B (- (* -1 (/ (+ C (* -1 (/ (- (* 1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)) 1)))
(+ 1 (/ C B))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1/2 (/ (pow C 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1 (/ (+ (* -1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)))
(+ 1 (* -1 (/ A B)))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(- C B)
(- (* C (+ 1 (* -1/2 (/ C B)))) B)
(- (* C (+ 1 (* C (- (* 1/8 (/ (pow C 2) (pow B 3))) (* 1/2 (/ 1 B)))))) B)
(- (* C (+ (* -1/2 (/ C (pow B 2))) (/ 1 B))) 1)
(- (* C (+ (* C (- (* 1/8 (/ (pow C 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(/ (- (* 1/8 (/ (pow B 4) (pow C 2))) (* 1/2 (pow B 2))) C)
(/ (- (* -1/16 (/ (pow B 6) (pow C 4))) (+ (* -1/8 (/ (pow B 4) (pow C 2))) (* 1/2 (pow B 2)))) C)
(/ (- (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow C 6))) (+ (* -1/8 (/ (pow B 4) (pow C 2))) (+ (* 1/16 (/ (pow B 6) (pow C 4))) (* 1/2 (pow B 2))))) C)
(/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow C 2)))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (* 1/8 (/ (pow B 3) (pow C 2))))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (+ (* 1/8 (/ (pow B 3) (pow C 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* B (pow C 6))))))) C)
(* C (+ (* -1 (/ A (* B C))) (/ 1 B)))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* 2 C)
(* -1 (* C (- (* -1/2 (/ (pow B 2) (pow C 2))) 2)))
(* -1 (* C (- (* 1/8 (/ (pow B 4) (pow C 4))) (+ 2 (* 1/2 (/ (pow B 2) (pow C 2)))))))
(* -1 (* C (- (* -1/16 (/ (pow B 6) (pow C 6))) (+ 2 (+ (* -1/8 (/ (pow B 4) (pow C 4))) (* 1/2 (/ (pow B 2) (pow C 2))))))))
(* -1 (* C (- (* -1/2 (/ B (pow C 2))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (* 1/8 (/ (pow B 3) (pow C 4)))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (+ (* -1/16 (/ (pow B 5) (pow C 6))) (* 1/8 (/ (pow B 3) (pow C 4))))) (* 2 (/ 1 B)))))
(* -1 (* C (- (/ A (* B C)) (/ 1 B))))
Calls

9 calls:

TimeVariablePointExpression
4.0ms
C
@-inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (- C (sqrt (+ (* C C) (* B B)))) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (PI) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (/ (- C A) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
B
@0
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (- C (sqrt (+ (* C C) (* B B)))) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (PI) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (/ (- C A) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
C
@inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (- C (sqrt (+ (* C C) (* B B)))) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (PI) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (/ (- C A) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
B
@-inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (- C (sqrt (+ (* C C) (* B B)))) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (PI) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (/ (- C A) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
B
@inf
((* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (- C (sqrt (+ (* C C) (* B B)))) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (PI) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (/ (- C A) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))

simplify175.0ms (2.3%)

Memory
19.0MiB live, 163.0MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06862737
120962643
083182394
Stop Event
iter limit
node limit
Counts
130 → 129
Calls
Call 1
Inputs
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
-1
(- (* -1 (/ A B)) 1)
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(/ C B)
(+ (* -1 (/ A B)) (/ C B))
B
(+ A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(* -1 (/ A B))
(* A (- (/ C (* A B)) (/ 1 B)))
(* 2 A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(* -1 (* A (+ (* -1 (/ C (* A B))) (/ 1 B))))
(* -1/2 (/ (pow B 2) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(* -1/2 (/ (pow B 2) C))
(* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* (pow B 2) (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* -1/2 (/ B C))
(* B (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(/ (- C A) B)
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(* -1 B)
(* B (- (/ C B) 1))
(* B (- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1))
(* B (- (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B)) (+ 1 (* 1/2 (/ (pow C 2) (pow B 2))))))
(- (/ C B) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B))) 1)
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(* B (+ 1 (/ A B)))
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (- (* -1 (/ C B)) 1)))
(* -1 (* B (- (* -1 (/ (+ C (* 1/2 (/ (pow C 2) B))) B)) 1)))
(* -1 (* B (- (* -1 (/ (+ C (* -1 (/ (- (* 1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)) 1)))
(+ 1 (/ C B))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1/2 (/ (pow C 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1 (/ (+ (* -1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)))
(+ 1 (* -1 (/ A B)))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(- C B)
(- (* C (+ 1 (* -1/2 (/ C B)))) B)
(- (* C (+ 1 (* C (- (* 1/8 (/ (pow C 2) (pow B 3))) (* 1/2 (/ 1 B)))))) B)
(- (* C (+ (* -1/2 (/ C (pow B 2))) (/ 1 B))) 1)
(- (* C (+ (* C (- (* 1/8 (/ (pow C 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(/ (- (* 1/8 (/ (pow B 4) (pow C 2))) (* 1/2 (pow B 2))) C)
(/ (- (* -1/16 (/ (pow B 6) (pow C 4))) (+ (* -1/8 (/ (pow B 4) (pow C 2))) (* 1/2 (pow B 2)))) C)
(/ (- (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow C 6))) (+ (* -1/8 (/ (pow B 4) (pow C 2))) (+ (* 1/16 (/ (pow B 6) (pow C 4))) (* 1/2 (pow B 2))))) C)
(/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow C 2)))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (* 1/8 (/ (pow B 3) (pow C 2))))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (+ (* 1/8 (/ (pow B 3) (pow C 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* B (pow C 6))))))) C)
(* C (+ (* -1 (/ A (* B C))) (/ 1 B)))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* 2 C)
(* -1 (* C (- (* -1/2 (/ (pow B 2) (pow C 2))) 2)))
(* -1 (* C (- (* 1/8 (/ (pow B 4) (pow C 4))) (+ 2 (* 1/2 (/ (pow B 2) (pow C 2)))))))
(* -1 (* C (- (* -1/16 (/ (pow B 6) (pow C 6))) (+ 2 (+ (* -1/8 (/ (pow B 4) (pow C 4))) (* 1/2 (/ (pow B 2) (pow C 2))))))))
(* -1 (* C (- (* -1/2 (/ B (pow C 2))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (* 1/8 (/ (pow B 3) (pow C 4)))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (+ (* -1/16 (/ (pow B 5) (pow C 6))) (* 1/8 (/ (pow B 3) (pow C 4))))) (* 2 (/ 1 B)))))
(* -1 (* C (- (/ A (* B C)) (/ 1 B))))
Outputs
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)) (PI.f64)) #s(literal 180 binary64))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B)) (PI.f64))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(atan.f64 (/.f64 (-.f64 (-.f64 C (hypot.f64 (-.f64 A C) B)) A) B))
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B)) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 C C (*.f64 B B))))) (/.f64 A B)) (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) A) (/.f64 (fma.f64 (*.f64 A C) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 C C (*.f64 B B))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 C (/.f64 C (fma.f64 C C (*.f64 B B))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) B) (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
-1
#s(literal -1 binary64)
(- (* -1 (/ A B)) 1)
(-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (/.f64 (/.f64 A B) B) #s(literal -1/2 binary64)) (/.f64 #s(literal 1 binary64) B)) A) #s(literal 1 binary64))
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 A (/.f64 A (pow.f64 B #s(literal 4 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/2 binary64) (*.f64 B B))) A) (/.f64 #s(literal 1 binary64) B)) A) #s(literal 1 binary64))
(/ C B)
(/.f64 C B)
(+ (* -1 (/ A B)) (/ C B))
(/.f64 (-.f64 C A) B)
B
(+ A B)
(+.f64 A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 A (/.f64 A (pow.f64 B #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) B)) A #s(literal 1 binary64)) A B)
(* -2 (/ A B))
(*.f64 #s(literal -2 binary64) (/.f64 A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 (/.f64 C B) A) (fma.f64 (/.f64 (/.f64 C B) A) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (-.f64 (/.f64 (/.f64 C B) A) (fma.f64 (/.f64 (/.f64 C B) A) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B)))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 B (*.f64 A A)) (*.f64 (/.f64 C (pow.f64 A #s(literal 3 binary64))) B)) (-.f64 (/.f64 (/.f64 C B) A) (fma.f64 (/.f64 (/.f64 C B) A) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B)))) A)
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (/.f64 #s(literal -2 binary64) B)) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(*.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 3 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal 1/8 binary64) (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (/.f64 #s(literal -2 binary64) B))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 A #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 B #s(literal 3 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal 1/8 binary64) (/.f64 #s(literal -2 binary64) B)))) A)
(* -1 (/ A B))
(/.f64 (neg.f64 A) B)
(* A (- (/ C (* A B)) (/ 1 B)))
(*.f64 (-.f64 (/.f64 (/.f64 C B) A) (/.f64 #s(literal 1 binary64) B)) A)
(* 2 A)
(*.f64 #s(literal 2 binary64) A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(*.f64 (fma.f64 (*.f64 B (/.f64 B (*.f64 A A))) #s(literal 1/2 binary64) #s(literal 2 binary64)) A)
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 B (/.f64 B (*.f64 A A))) #s(literal 1/2 binary64) #s(literal 2 binary64))) A)
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 B (/.f64 B (*.f64 A A))) #s(literal 1/2 binary64) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 B #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 A #s(literal 6 binary64)))) A)
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64)) #s(literal 180 binary64))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B))
(* 1/2 (/ B A))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A)
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (*.f64 A B)) (*.f64 C B))) (neg.f64 A))) (neg.f64 A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) C) B (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) C) (pow.f64 B #s(literal 4 binary64)) (*.f64 (neg.f64 C) (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) (*.f64 A B)) (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 B) B) C) C (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) B))) (neg.f64 A))) (neg.f64 A))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (*.f64 #s(literal -1/2 binary64) B)) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(/.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (*.f64 #s(literal -1/2 binary64) B))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 A #s(literal 6 binary64))) (/.f64 (*.f64 #s(literal 5/64 binary64) (pow.f64 B #s(literal 8 binary64))) B) (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (/.f64 (*.f64 (pow.f64 B #s(literal 5 binary64)) #s(literal -1/16 binary64)) (pow.f64 A #s(literal 4 binary64)))))) (neg.f64 A))
(* -1 (* A (+ (* -1 (/ C (* A B))) (/ 1 B))))
(neg.f64 (fma.f64 (neg.f64 A) (/.f64 (/.f64 C B) A) (/.f64 A B)))
(* -1/2 (/ (pow B 2) A))
(*.f64 (*.f64 B (/.f64 B A)) #s(literal -1/2 binary64))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (*.f64 #s(literal 1/2 binary64) (*.f64 B B))) (neg.f64 A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (fma.f64 (*.f64 #s(literal 1/2 binary64) B) B (/.f64 (*.f64 (pow.f64 B #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 A #s(literal 4 binary64))))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(/.f64 (fma.f64 (*.f64 (pow.f64 B #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 A #s(literal 6 binary64)))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (fma.f64 (*.f64 #s(literal 1/2 binary64) B) B (/.f64 (*.f64 (pow.f64 B #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 A #s(literal 4 binary64)))))) (neg.f64 A))
(/ (- (* 2 C) (* 2 A)) B)
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 C A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/.f64 (fma.f64 (*.f64 B (/.f64 B (-.f64 A C))) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) B) B (/.f64 #s(literal -1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 (-.f64 A C) #s(literal 5 binary64)))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(* -1/2 (/ (pow B 2) C))
(*.f64 (/.f64 (*.f64 B B) C) #s(literal -1/2 binary64))
(* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64))) B) B (/.f64 #s(literal -1/2 binary64) C)) (*.f64 B B))
(* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(*.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 C #s(literal 5 binary64)))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) C)) (*.f64 B B))
(* (pow B 2) (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 C #s(literal 7 binary64)))) #s(literal 5/128 binary64) (/.f64 #s(literal -1/16 binary64) (pow.f64 C #s(literal 5 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) C)) (*.f64 B B))
(* -1/2 (/ B C))
(*.f64 (/.f64 B C) #s(literal -1/2 binary64))
(* B (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64))) B) B (/.f64 #s(literal -1/2 binary64) C)) B)
(* B (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(*.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 C #s(literal 5 binary64)))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) C)) B)
(* B (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 C #s(literal 7 binary64)))) #s(literal 5/128 binary64) (/.f64 #s(literal -1/16 binary64) (pow.f64 C #s(literal 5 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) C)) B)
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/.f64 (fma.f64 (*.f64 B (/.f64 B A)) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) A)) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 3 binary64))) B) B (/.f64 #s(literal -1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 A #s(literal 5 binary64)))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal -1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)) B)
(/ (- C A) B)
(/.f64 (-.f64 C A) B)
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(fma.f64 (*.f64 B (/.f64 B A)) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 A #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal 2 binary64) A))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 B (/.f64 B (pow.f64 A #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 A #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal 2 binary64) A))
(- (/ C B) (+ 1 (/ A B)))
(-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
(* -1 B)
(neg.f64 B)
(* B (- (/ C B) 1))
(*.f64 (-.f64 (/.f64 C B) #s(literal 1 binary64)) B)
(* B (- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1))
(*.f64 (fma.f64 (*.f64 (/.f64 (/.f64 C B) B) #s(literal -1/2 binary64)) C (-.f64 (/.f64 C B) #s(literal 1 binary64))) B)
(* B (- (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B)) (+ 1 (* 1/2 (/ (pow C 2) (pow B 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 C #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 C B) B) #s(literal -1/2 binary64)) C (-.f64 (/.f64 C B) #s(literal 1 binary64)))) B)
(- (/ C B) 1)
(-.f64 (/.f64 C B) #s(literal 1 binary64))
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1)
(fma.f64 (*.f64 (/.f64 (/.f64 C B) B) #s(literal -1/2 binary64)) C (-.f64 (/.f64 C B) #s(literal 1 binary64)))
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B))) 1)
(fma.f64 (/.f64 (pow.f64 C #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 C B) B) #s(literal -1/2 binary64)) C (-.f64 (/.f64 C B) #s(literal 1 binary64))))
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (*.f64 A (/.f64 A B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(-.f64 (fma.f64 (/.f64 (pow.f64 A #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (*.f64 A (/.f64 A B)) (/.f64 (neg.f64 A) B))) #s(literal 1 binary64))
(* B (+ 1 (/ A B)))
(fma.f64 (/.f64 A B) B B)
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(fma.f64 (fma.f64 (*.f64 A (/.f64 (/.f64 A B) B)) #s(literal 1/2 binary64) (/.f64 A B)) B B)
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 A #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 A (/.f64 (/.f64 A B) B)) #s(literal 1/2 binary64) (/.f64 A B))) B B)
1
#s(literal 1 binary64)
(- (+ 1 (/ C B)) (/ A B))
(+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal -1/2 binary64) (neg.f64 (-.f64 C A))) B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (neg.f64 (-.f64 C A)) (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 #s(literal 1/2 binary64) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))) B)) B))
(* -1 (* B (- (* -1 (/ C B)) 1)))
(*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (+ C (* 1/2 (/ (pow C 2) B))) B)) 1)))
(*.f64 (-.f64 (/.f64 (fma.f64 (*.f64 C (/.f64 C B)) #s(literal -1/2 binary64) (neg.f64 C)) B) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (+ C (* -1 (/ (- (* 1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)) 1)))
(*.f64 (-.f64 (/.f64 (-.f64 C (/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) B) (/.f64 (pow.f64 C #s(literal 4 binary64)) B) (*.f64 #s(literal -1/2 binary64) (*.f64 C C))) B)) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(+ 1 (/ C B))
(+.f64 (/.f64 C B) #s(literal 1 binary64))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1/2 (/ (pow C 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 C (/.f64 C B)) #s(literal -1/2 binary64) (neg.f64 C)) B))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1 (/ (+ (* -1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) C) C (*.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 C #s(literal 4 binary64)) B))) (neg.f64 B)) C) B))
(+ 1 (* -1 (/ A B)))
(-.f64 #s(literal 1 binary64) (/.f64 A B))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 A (/.f64 A B)) #s(literal -1/2 binary64) A) B))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 A #s(literal 4 binary64)) B) (*.f64 #s(literal 1/2 binary64) (*.f64 A A))) B)) B))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A B)) (neg.f64 B))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 A (/.f64 A B)) #s(literal -1/2 binary64) A) B)) (neg.f64 B))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 A #s(literal 4 binary64)) B) (*.f64 #s(literal 1/2 binary64) (*.f64 A A))) B)) B)) (neg.f64 B))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B) (/.f64 #s(literal 1 binary64) B)) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 A A (*.f64 B B))))) (/.f64 C B)) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B) (/.f64 #s(literal 1 binary64) B))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) C) (/.f64 (fma.f64 (*.f64 A C) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 A A (*.f64 B B))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64))))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 A (/.f64 A (fma.f64 A A (*.f64 B B))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))))) B) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B) (/.f64 #s(literal 1 binary64) B))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(- C B)
(-.f64 C B)
(- (* C (+ 1 (* -1/2 (/ C B)))) B)
(-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 C B) #s(literal 1 binary64)) C) B)
(- (* C (+ 1 (* C (- (* 1/8 (/ (pow C 2) (pow B 3))) (* 1/2 (/ 1 B)))))) B)
(-.f64 (fma.f64 (fma.f64 (*.f64 C (/.f64 C (pow.f64 B #s(literal 3 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/2 binary64) B)) (*.f64 C C) C) B)
(- (* C (+ (* -1/2 (/ C (pow B 2))) (/ 1 B))) 1)
(fma.f64 (*.f64 (/.f64 (/.f64 C B) B) #s(literal -1/2 binary64)) C (-.f64 (/.f64 C B) #s(literal 1 binary64)))
(- (* C (+ (* C (- (* 1/8 (/ (pow C 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(fma.f64 (fma.f64 (*.f64 C (/.f64 C (pow.f64 B #s(literal 4 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/2 binary64) (*.f64 B B))) (*.f64 C C) (-.f64 (/.f64 C B) #s(literal 1 binary64)))
(* -1 (/ (+ A (* -1 A)) B))
(/.f64 #s(literal 0 binary64) B)
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 A) A) B) B (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (*.f64 (pow.f64 C #s(literal 3 binary64)) B)) #s(literal 1/2 binary64) (/.f64 #s(literal 0 binary64) B)))
(/ (- (* 1/8 (/ (pow B 4) (pow C 2))) (* 1/2 (pow B 2))) C)
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 4 binary64)) C) (*.f64 (*.f64 #s(literal -1/2 binary64) B) B)) C)
(/ (- (* -1/16 (/ (pow B 6) (pow C 4))) (+ (* -1/8 (/ (pow B 4) (pow C 2))) (* 1/2 (pow B 2)))) C)
(/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 B #s(literal 6 binary64)) #s(literal -1/16 binary64)) (pow.f64 C #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal -1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 4 binary64)) C) (*.f64 #s(literal 1/2 binary64) (*.f64 B B)))) C)
(/ (- (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow C 6))) (+ (* -1/8 (/ (pow B 4) (pow C 2))) (+ (* 1/16 (/ (pow B 6) (pow C 4))) (* 1/2 (pow B 2))))) C)
(/.f64 (-.f64 (/.f64 (*.f64 (*.f64 #s(literal 5/64 binary64) (pow.f64 B #s(literal 8 binary64))) #s(literal 1/2 binary64)) (pow.f64 C #s(literal 6 binary64))) (fma.f64 (/.f64 #s(literal -1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 4 binary64)) C) (fma.f64 (*.f64 #s(literal 1/2 binary64) B) B (/.f64 (*.f64 (pow.f64 B #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 C #s(literal 4 binary64)))))) C)
(/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow C 2)))) C)
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 3 binary64)) C) (*.f64 #s(literal -1/2 binary64) B)) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (* 1/8 (/ (pow B 3) (pow C 2))))) C)
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 3 binary64)) C) (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 C #s(literal 4 binary64))) #s(literal -1/16 binary64) (*.f64 #s(literal -1/2 binary64) B))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (+ (* 1/8 (/ (pow B 3) (pow C 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* B (pow C 6))))))) C)
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 C #s(literal 6 binary64))) (/.f64 (*.f64 #s(literal 5/64 binary64) (pow.f64 B #s(literal 8 binary64))) B) (fma.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 3 binary64)) C) (/.f64 (*.f64 (pow.f64 B #s(literal 5 binary64)) #s(literal -1/16 binary64)) (pow.f64 C #s(literal 4 binary64)))))) C)
(* C (+ (* -1 (/ A (* B C))) (/ 1 B)))
(fma.f64 (/.f64 (/.f64 (neg.f64 A) C) B) C (/.f64 C B))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64)) #s(literal 180 binary64))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B)))
(* 2 (/ C B))
(*.f64 (/.f64 C B) #s(literal 2 binary64))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 A C) (/.f64 #s(literal 2 binary64) B) (/.f64 #s(literal -2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 B C) #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) (/.f64 A B))) C) #s(literal -1 binary64) (/.f64 #s(literal -2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 A B) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B C) A B)) C)) (neg.f64 C)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))
(* 2 C)
(*.f64 #s(literal 2 binary64) C)
(* -1 (* C (- (* -1/2 (/ (pow B 2) (pow C 2))) 2)))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 B B) C) C) #s(literal -1/2 binary64) #s(literal -2 binary64)) (neg.f64 C))
(* -1 (* C (- (* 1/8 (/ (pow B 4) (pow C 4))) (+ 2 (* 1/2 (/ (pow B 2) (pow C 2)))))))
(*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 B #s(literal 4 binary64)) #s(literal 1/8 binary64)) (pow.f64 C #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 B B) C) C) #s(literal 1/2 binary64) #s(literal 2 binary64))) (neg.f64 C))
(* -1 (* C (- (* -1/16 (/ (pow B 6) (pow C 6))) (+ 2 (+ (* -1/8 (/ (pow B 4) (pow C 4))) (* 1/2 (/ (pow B 2) (pow C 2))))))))
(*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 B #s(literal 6 binary64)) #s(literal -1/16 binary64)) (pow.f64 C #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 C #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 B B) C) C) #s(literal 1/2 binary64) #s(literal 2 binary64)))) (neg.f64 C))
(* -1 (* C (- (* -1/2 (/ B (pow C 2))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) C) (/.f64 B C) (/.f64 #s(literal -2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (* 1/8 (/ (pow B 3) (pow C 4)))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 3 binary64)) (pow.f64 C #s(literal 4 binary64))) #s(literal 1/8 binary64) (fma.f64 (/.f64 #s(literal -1/2 binary64) C) (/.f64 B C) (/.f64 #s(literal -2 binary64) B))) (neg.f64 C))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (+ (* -1/16 (/ (pow B 5) (pow C 6))) (* 1/8 (/ (pow B 3) (pow C 4))))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) C) (/.f64 B C) (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 C #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 B #s(literal 3 binary64)) (pow.f64 C #s(literal 4 binary64))) #s(literal 1/8 binary64) (/.f64 #s(literal -2 binary64) B)))) (neg.f64 C))
(* -1 (* C (- (/ A (* B C)) (/ 1 B))))
(*.f64 (-.f64 (/.f64 (/.f64 A B) C) (/.f64 #s(literal 1 binary64) B)) (neg.f64 C))

rewrite150.0ms (1.9%)

Memory
-10.1MiB live, 122.0MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060738
094738
1339698
02699543
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
27 → 139
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))
(-.f64 C (hypot.f64 C B))
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(PI.f64)
#s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
(/.f64 (-.f64 C A) B)
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B))
Outputs
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64))))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64))))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B)))
(/.f64 (neg.f64 (-.f64 (*.f64 C C) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (neg.f64 (+.f64 (hypot.f64 C B) C)))
(/.f64 (neg.f64 (-.f64 (pow.f64 C #s(literal 3 binary64)) (pow.f64 (hypot.f64 C B) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (hypot.f64 C B) (+.f64 (hypot.f64 C B) C) (*.f64 C C))))
(/.f64 (-.f64 (*.f64 C C) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) (+.f64 (hypot.f64 C B) C))
(/.f64 (-.f64 (pow.f64 C #s(literal 3 binary64)) (pow.f64 (hypot.f64 C B) #s(literal 3 binary64))) (fma.f64 (hypot.f64 C B) (+.f64 (hypot.f64 C B) C) (*.f64 C C)))
(-.f64 (/.f64 (*.f64 C C) (+.f64 (hypot.f64 C B) C)) (/.f64 (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)) (+.f64 (hypot.f64 C B) C)))
(-.f64 (/.f64 (pow.f64 C #s(literal 3 binary64)) (fma.f64 (hypot.f64 C B) (+.f64 (hypot.f64 C B) C) (*.f64 C C))) (/.f64 (pow.f64 (hypot.f64 C B) #s(literal 3 binary64)) (fma.f64 (hypot.f64 C B) (+.f64 (hypot.f64 C B) C) (*.f64 C C))))
(-.f64 C (hypot.f64 C B))
(/.f64 (-.f64 (*.f64 (/.f64 C B) (/.f64 C B)) (*.f64 (/.f64 (hypot.f64 C B) B) (/.f64 (hypot.f64 C B) B))) (+.f64 (/.f64 C B) (/.f64 (hypot.f64 C B) B)))
(/.f64 (-.f64 (pow.f64 (/.f64 C B) #s(literal 3 binary64)) (pow.f64 (/.f64 (hypot.f64 C B) B) #s(literal 3 binary64))) (fma.f64 (/.f64 C B) (/.f64 C B) (fma.f64 (/.f64 (hypot.f64 C B) B) (/.f64 (hypot.f64 C B) B) (*.f64 (/.f64 C B) (/.f64 (hypot.f64 C B) B)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 C (hypot.f64 C B)))) B)
(/.f64 (-.f64 (*.f64 C B) (*.f64 B (hypot.f64 C B))) (*.f64 B B))
(/.f64 (-.f64 (*.f64 C C) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 C B) C) B))
(/.f64 (-.f64 (pow.f64 C #s(literal 3 binary64)) (pow.f64 (hypot.f64 C B) #s(literal 3 binary64))) (*.f64 (fma.f64 (hypot.f64 C B) (+.f64 (hypot.f64 C B) C) (*.f64 C C)) B))
(/.f64 (neg.f64 (-.f64 C (hypot.f64 C B))) (neg.f64 B))
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(neg.f64 (/.f64 (neg.f64 (-.f64 C (hypot.f64 C B))) B))
(neg.f64 (/.f64 (-.f64 C (hypot.f64 C B)) (neg.f64 B)))
(-.f64 (/.f64 C B) (/.f64 (hypot.f64 C B) B))
(PI.f64)
#s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64)))
(*.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 (-.f64 C A) B))
(/.f64 (*.f64 (neg.f64 (-.f64 C A)) #s(literal 1 binary64)) (neg.f64 B))
(/.f64 (*.f64 (-.f64 C A) #s(literal 1 binary64)) B)
(/.f64 (*.f64 (/.f64 (-.f64 C A) B) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 C B) (/.f64 C B)) (pow.f64 (/.f64 (neg.f64 A) B) #s(literal 2 binary64))) (+.f64 (/.f64 C B) (/.f64 A B)))
(/.f64 (-.f64 (pow.f64 (/.f64 C B) #s(literal 3 binary64)) (pow.f64 (/.f64 A B) #s(literal 3 binary64))) (fma.f64 (/.f64 C B) (/.f64 C B) (fma.f64 (/.f64 A B) (/.f64 A B) (*.f64 (/.f64 C B) (/.f64 A B)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 C A))) B)
(/.f64 (-.f64 (*.f64 C (neg.f64 B)) (*.f64 B (neg.f64 A))) (*.f64 (neg.f64 B) B))
(/.f64 (-.f64 (*.f64 C B) (*.f64 B A)) (*.f64 B B))
(/.f64 (*.f64 (neg.f64 (-.f64 C A)) #s(literal 2 binary64)) (*.f64 (neg.f64 B) #s(literal 2 binary64)))
(/.f64 (*.f64 (-.f64 C A) #s(literal 2 binary64)) (*.f64 B #s(literal 2 binary64)))
(/.f64 (*.f64 (+.f64 A C) (-.f64 C A)) (*.f64 (+.f64 A C) B))
(/.f64 (-.f64 (pow.f64 C #s(literal 3 binary64)) (pow.f64 A #s(literal 3 binary64))) (*.f64 (fma.f64 A (+.f64 A C) (*.f64 C C)) B))
(/.f64 (neg.f64 (-.f64 C A)) (neg.f64 B))
(/.f64 (-.f64 C A) B)
(neg.f64 (/.f64 (neg.f64 (-.f64 C A)) B))
(neg.f64 (/.f64 (-.f64 C A) (neg.f64 B)))
(-.f64 (/.f64 C B) (/.f64 A B))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B))
(/.f64 (neg.f64 (neg.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)))) (neg.f64 B))
(/.f64 (neg.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B))) B)
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) (neg.f64 B))
(neg.f64 (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 A B) #s(literal 1 binary64)) A B)) B))

eval51.0ms (0.7%)

Memory
16.8MiB live, 75.6MiB allocated; 18ms collecting garbage
Compiler

Compiled 11 893 to 1 613 computations (86.4% saved)

prune20.0ms (0.3%)

Memory
-5.2MiB live, 39.2MiB allocated; 5ms collecting garbage
Pruning

19 alts after pruning (13 fresh and 6 done)

PrunedKeptTotal
New2606266
Fresh5712
Picked145
Done022
Total26619285
Accuracy
99.6%
Counts
285 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
24.7%
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
27.3%
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
55.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
32.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
68.2%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
32.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
38.4%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))) B))) (PI.f64)))
22.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
34.9%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
26.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
15.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
38.4%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
27.3%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
22.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
24.7%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
42.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
38.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
21.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
24.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Compiler

Compiled 1 135 to 845 computations (25.6% saved)

simplify153.0ms (2%)

Memory
1.0MiB live, 149.6MiB allocated; 13ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))
cost-diff0
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))))
cost-diff0
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
cost-diff0
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
cost-diff0
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B)))
cost-diff0
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
cost-diff2
(/.f64 #s(literal 0 binary64) B)
cost-diff0
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))))
cost-diff0
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64))
cost-diff0
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
cost-diff2
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067819
0100809
1164769
2293769
3536769
41322769
56517769
08762632
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))
(/.f64 #s(literal 1 binary64) B)
#s(literal 1 binary64)
B
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))
(-.f64 C A)
C
A
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))
(fma.f64 C C (*.f64 B B))
(*.f64 B B)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))
(/.f64 #s(literal 0 binary64) B)
#s(literal 0 binary64)
B
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))
(*.f64 (/.f64 B C) #s(literal -1/2 binary64))
(/.f64 B C)
B
C
#s(literal -1/2 binary64)
(PI.f64)
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))))
#s(literal 180 binary64)
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
(*.f64 #s(literal 1/2 binary64) (/.f64 B A))
#s(literal 1/2 binary64)
(/.f64 B A)
B
A
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))
(/.f64 (*.f64 B B) A)
(*.f64 B B)
B
A
#s(literal -1/2 binary64)
(neg.f64 B)
(PI.f64)
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))) B)))
#s(literal 180 binary64)
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))) B)) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))) B))
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))
(/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))) B)
(/.f64 #s(literal 1 binary64) B)
#s(literal 1 binary64)
B
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))
(-.f64 C A)
C
A
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))
(fma.f64 C C (*.f64 B B))
(*.f64 B B)
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B)))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))
(/.f64 #s(literal 0 binary64) B)
#s(literal 0 binary64)
#s(literal 0 binary64)
B
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))
(*.f64 (/.f64 B C) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (/.f64 B C))
(/.f64 B C)
B
C
#s(literal -1/2 binary64)
(PI.f64)
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))))
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) #s(literal 180 binary64))
#s(literal 180 binary64)
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (/.f64 B A))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(/.f64 B A)
B
A
(PI.f64)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (PI.f64)) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))))
#s(literal 180 binary64)
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64)))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))
(*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))
(/.f64 (*.f64 B B) A)
(*.f64 (/.f64 B A) B)
(*.f64 B B)
B
A
#s(literal -1/2 binary64)
(neg.f64 B)
(PI.f64)

localize197.0ms (2.6%)

Memory
24.6MiB live, 258.9MiB allocated; 23ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy3.9876137560363274
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))
accuracy6.957089720995039
(/.f64 (*.f64 B B) A)
accuracy18.052504749881894
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))
accuracy46.81357930024252
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64)))
accuracy0.0
(PI.f64)
accuracy0.0703125
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
accuracy0.16838716752548238
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))))
accuracy52.075427975280455
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
accuracy19.192127824535515
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))
accuracy47.64050164588702
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))
accuracy0.0
(PI.f64)
accuracy0.0859375
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64))
accuracy0.13811436357282347
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
accuracy54.40103310269624
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))
accuracy4.734646502097589
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))
accuracy6.4738330593867435
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))
accuracy15.9437080510036
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))
accuracy33.67376033044734
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))
Samples
65.0ms40×2valid
55.0ms163×0valid
27.0ms24×3valid
17.0ms29×1valid
Compiler

Compiled 552 to 42 computations (92.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 129.0ms
adjust: 43.0ms (33.3% of total)
ival-div: 24.0ms (18.6% of total)
ival-mult: 17.0ms (13.2% of total)
ival-hypot: 15.0ms (11.6% of total)
ival-pow2: 7.0ms (5.4% of total)
ival-sub: 7.0ms (5.4% of total)
ival-sqrt: 6.0ms (4.6% of total)
ival-add: 5.0ms (3.9% of total)
ival-atan: 3.0ms (2.3% of total)
ival-pi: 1.0ms (0.8% of total)
exact: 1.0ms (0.8% of total)
ival-neg: 1.0ms (0.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series31.0ms (0.4%)

Memory
4.5MiB live, 48.6MiB allocated; 6ms collecting garbage
Counts
29 → 193
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))))
(/.f64 #s(literal 0 binary64) B)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))
(PI.f64)
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64)))
(/.f64 (*.f64 B B) A)
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))
Outputs
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(* 180 (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)))
(sqrt (+ (pow B 2) (pow C 2)))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(+ (pow B 2) (pow C 2))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
B
(+ A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(/ (pow B 2) A)
-1
(- (* -1 (/ A B)) 1)
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
A
(* A (+ 1 (* -1 (/ C A))))
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(pow A 2)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(* -2 A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* 2 A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(* 180 (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)))
(* -1 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(* 1/2 (/ (pow B 2) A))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1/2 (/ (pow B 2) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
0
(- A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(pow (- A C) 2)
(+ (pow B 2) (pow (- A C) 2))
(- (* 2 C) (* 2 A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(* -1/2 (/ B C))
(* B (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(pow B 2)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(* -1 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(- (/ C B) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B))) 1)
(* B (+ 1 (/ A B)))
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(+ 1 (/ C B))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1/2 (/ (pow C 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1 (/ (+ (* -1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(+ 1 (* -1 (/ A B)))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(sqrt (+ (pow A 2) (pow B 2)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(+ (pow A 2) (pow B 2))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (+ (* -1/2 (/ C (pow B 2))) (/ 1 B))) 1)
(- (* C (+ (* C (- (* 1/8 (/ (pow C 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
C
(* C (+ 1 (* -1 (/ A C))))
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(pow C 2)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(* -1 (+ A (* -1 A)))
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow C 2)))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (* 1/8 (/ (pow B 3) (pow C 2))))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (+ (* 1/8 (/ (pow B 3) (pow C 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* B (pow C 6))))))) C)
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(* 180 (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))))
(* -1 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(* 2 C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1/2 (/ B (pow C 2))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (* 1/8 (/ (pow B 3) (pow C 4)))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (+ (* -1/16 (/ (pow B 5) (pow C 6))) (* 1/8 (/ (pow B 3) (pow C 4))))) (* 2 (/ 1 B)))))
Calls

9 calls:

TimeVariablePointExpression
6.0ms
C
@inf
((* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (/ 0 B) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (PI)) (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (PI) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (* B B) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
6.0ms
A
@0
((* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (/ 0 B) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (PI)) (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (PI) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (* B B) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
A
@-inf
((* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (/ 0 B) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (PI)) (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (PI) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (* B B) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
B
@inf
((* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (/ 0 B) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (PI)) (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (PI) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (* B B) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))
2.0ms
A
@inf
((* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (/ 0 B) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/ (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (PI)) (* 180 (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (* 180 (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI))) (/ (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (PI)) (atan (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (sqrt (+ (pow (- A C) 2) (pow B 2))) (+ (pow (- A C) 2) (pow B 2)) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (PI) (/ (- C (sqrt (+ (* C C) (* B B)))) B) (+ (sqrt (+ (* B B) (* A A))) A) (/ (* B B) A) (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)))

simplify156.0ms (2%)

Memory
10.4MiB live, 191.6MiB allocated; 30ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09084304
129674138
086373729
Stop Event
iter limit
node limit
Counts
193 → 190
Calls
Call 1
Inputs
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(* 180 (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)))
(sqrt (+ (pow B 2) (pow C 2)))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(+ (pow B 2) (pow C 2))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
B
(+ A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(/ (pow B 2) A)
-1
(- (* -1 (/ A B)) 1)
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(* -2 (/ A B))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
A
(* A (+ 1 (* -1 (/ C A))))
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(pow A 2)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(* -2 A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* 2 A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(* 1/2 (/ B A))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(* 180 (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)))
(* -1 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(* 1/2 (/ (pow B 2) A))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(* -1/2 (/ (pow B 2) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(/ (- (* 2 C) (* 2 A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
0
(- A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(pow (- A C) 2)
(+ (pow B 2) (pow (- A C) 2))
(- (* 2 C) (* 2 A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(* -1/2 (/ B C))
(* B (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(* B (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(- (/ C B) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(pow B 2)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(* -1 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(- (/ C B) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1)
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B))) 1)
(* B (+ 1 (/ A B)))
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
1
(- (+ 1 (/ C B)) (/ A B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(+ 1 (/ C B))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1/2 (/ (pow C 2) B))) B)))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1 (/ (+ (* -1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(+ 1 (* -1 (/ A B)))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(sqrt (+ (pow A 2) (pow B 2)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(+ (pow A 2) (pow B 2))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(- (* C (+ (* -1/2 (/ C (pow B 2))) (/ 1 B))) 1)
(- (* C (+ (* C (- (* 1/8 (/ (pow C 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(* -1 (/ (+ A (* -1 A)) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
C
(* C (+ 1 (* -1 (/ A C))))
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(pow C 2)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(* -1 (+ A (* -1 A)))
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow C 2)))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (* 1/8 (/ (pow B 3) (pow C 2))))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (+ (* 1/8 (/ (pow B 3) (pow C 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* B (pow C 6))))))) C)
(* 2 (/ C B))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(* 180 (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))))
(* -1 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(* 2 C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
(* -1 (* C (- (* -1/2 (/ B (pow C 2))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (* 1/8 (/ (pow B 3) (pow C 4)))) (* 2 (/ 1 B)))))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (+ (* -1/16 (/ (pow B 5) (pow C 6))) (* 1/8 (/ (pow B 3) (pow C 4))))) (* 2 (/ 1 B)))))
Outputs
(/ (- C (sqrt (+ (pow B 2) (pow C 2)))) B)
(/.f64 (-.f64 C (hypot.f64 C B)) B)
(- (+ (* -1 (/ (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) B)) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 A (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B)) (/.f64 (-.f64 C (hypot.f64 C B)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* -1/2 (* (/ (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 A (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) B) #s(literal -1/2 binary64) (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
(- (+ (* A (+ (* -1 (/ (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2))))))) B)) (* A (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) B) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))) B) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (/ C B)) (* (/ 1 B) (sqrt (+ (pow B 2) (pow C 2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) B)) A (/.f64 (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) (neg.f64 B))) A (/.f64 (-.f64 C (hypot.f64 C B)) B))
(* 180 (/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 A C) B)) B)) (PI.f64)) #s(literal 180 binary64))
(/ (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)) (PI))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 A C) B)) B)) (PI.f64))
(atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 A C) B)) B))
(* 180 (atan (/ (- C (+ A (sqrt (+ (pow B 2) (pow (- A C) 2))))) B)))
(*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 A C) B)) B)) #s(literal 180 binary64))
(sqrt (+ (pow B 2) (pow C 2)))
(hypot.f64 C B)
(+ (sqrt (+ (pow B 2) (pow C 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))
(fma.f64 A (*.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))) (hypot.f64 C B))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) A) (neg.f64 C))) A (hypot.f64 C B))
(+ (sqrt (+ (pow B 2) (pow C 2))) (* A (+ (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (* A (+ (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))))) A (*.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) A (hypot.f64 C B))
(+ (pow B 2) (pow C 2))
(fma.f64 C C (*.f64 B B))
(+ (* -2 (* A C)) (+ (pow B 2) (pow C 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (*.f64 B B))
(+ (* A (+ A (* -2 C))) (+ (pow B 2) (pow C 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) C A) A (fma.f64 C C (*.f64 B B)))
(- C (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 C (hypot.f64 C B))
(- (+ C (* -1 (* A (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 (fma.f64 (neg.f64 A) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64)) C) (hypot.f64 C B))
(- (+ C (* A (- (* -1/2 (* (* A (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2))))) (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 A (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))))) #s(literal -1/2 binary64)) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64))) A C) (hypot.f64 C B))
(- (+ C (* A (- (* A (- (* -1/2 (* (* A (* C (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))) (sqrt (/ 1 (pow (+ (pow B 2) (pow C 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow B 2) (pow C 2)))) (- 1 (/ (pow C 2) (+ (pow B 2) (pow C 2)))))))) (+ 1 (* -1 (* C (sqrt (/ 1 (+ (pow B 2) (pow C 2)))))))))) (sqrt (+ (pow B 2) (pow C 2))))
(-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 C C (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 C C) (fma.f64 C C (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B))))))) A) (fma.f64 (neg.f64 C) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 C C (*.f64 B B)))) #s(literal 1 binary64))) A C) (hypot.f64 C B))
B
(+ A B)
(+.f64 A B)
(+ B (* A (+ 1 (* 1/2 (/ A B)))))
(fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)
(+ B (* A (+ 1 (* A (+ (* -1/8 (/ (pow A 2) (pow B 3))) (* 1/2 (/ 1 B)))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 A A) (pow.f64 B #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) B)) A #s(literal 1 binary64)) A B)
(/ (pow B 2) A)
(/.f64 (*.f64 B B) A)
-1
#s(literal -1 binary64)
(- (* -1 (/ A B)) 1)
(-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))
(- (* A (- (* -1/2 (/ A (pow B 2))) (/ 1 B))) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (/.f64 A (*.f64 B B)) #s(literal -1/2 binary64)) (/.f64 #s(literal 1 binary64) B)) A) #s(literal 1 binary64))
(- (* A (- (* A (- (* 1/8 (/ (pow A 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 A A)) (pow.f64 B #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) (*.f64 B B))) A) (/.f64 #s(literal 1 binary64) B)) A) #s(literal 1 binary64))
(* -2 (/ A B))
(*.f64 (/.f64 A B) #s(literal -2 binary64))
(* A (- (/ C (* A B)) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 C (*.f64 A B)) (fma.f64 (/.f64 C (*.f64 A B)) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (/ C (* A B))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (-.f64 (/.f64 C (*.f64 A B)) (fma.f64 (/.f64 C (*.f64 A B)) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B)))) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/2 (/ (* B C) (pow A 3))) (/ C (* A B)))) (+ (* -1 (/ C (* A B))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 B (*.f64 A A)) (*.f64 B (/.f64 C (pow.f64 A #s(literal 3 binary64))))) (/.f64 C (*.f64 A B))) (fma.f64 (/.f64 C (*.f64 A B)) #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) B))) A)
A
(* A (+ 1 (* -1 (/ C A))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 C A)) A)
(* A (+ 1 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) (/.f64 (neg.f64 C) A)) A A)
(* A (+ 1 (+ (* -1 (/ C A)) (+ (* 1/2 (/ (* (pow B 2) C) (pow A 3))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B A) (/.f64 B A) (*.f64 (*.f64 B B) (/.f64 C (pow.f64 A #s(literal 3 binary64))))) (/.f64 (neg.f64 C) A)) A A)
(pow A 2)
(*.f64 A A)
(* (pow A 2) (+ 1 (* -2 (/ C A))))
(*.f64 (fma.f64 (/.f64 C A) #s(literal -2 binary64) #s(literal 1 binary64)) (*.f64 A A))
(* (pow A 2) (+ 1 (+ (* -2 (/ C A)) (+ (/ (pow B 2) (pow A 2)) (/ (pow C 2) (pow A 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 C A) #s(literal -2 binary64) #s(literal 1 binary64)) (/.f64 (fma.f64 C C (*.f64 B B)) (*.f64 A A))) (*.f64 A A))
(* -2 A)
(*.f64 #s(literal -2 binary64) A)
(* A (- (/ C A) (+ 2 (* -1 (/ C A)))))
(*.f64 (-.f64 (/.f64 C A) (-.f64 #s(literal 2 binary64) (/.f64 C A))) A)
(* A (- (+ (* -1/2 (/ (pow B 2) (pow A 2))) (/ C A)) (+ 2 (* -1 (/ C A)))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 (*.f64 B B) A) (-.f64 (/.f64 C A) (-.f64 #s(literal 2 binary64) (/.f64 C A)))) A)
(* A (- (+ (* -1/2 (/ (* (pow B 2) C) (pow A 3))) (/ C A)) (+ 2 (+ (* -1 (/ C A)) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 B B) (/.f64 C (pow.f64 A #s(literal 3 binary64)))) #s(literal -1/2 binary64) (-.f64 (/.f64 C A) (-.f64 (-.f64 #s(literal 2 binary64) (/.f64 C A)) (*.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 (*.f64 B B) A))))) A)
(* 2 A)
(*.f64 #s(literal 2 binary64) A)
(* A (+ 2 (* 1/2 (/ (pow B 2) (pow A 2)))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) #s(literal 2 binary64)) A)
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (* 1/2 (/ (pow B 2) (pow A 2))))))
(*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 B #s(literal 4 binary64))) (pow.f64 A #s(literal 4 binary64)))) #s(literal -2 binary64)) A)
(* A (+ 2 (+ (* -1/8 (/ (pow B 4) (pow A 4))) (+ (* 1/16 (/ (pow B 6) (pow A 6))) (* 1/2 (/ (pow B 2) (pow A 2)))))))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 B #s(literal 4 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) A) (/.f64 (*.f64 B B) A) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 B #s(literal 6 binary64))) (pow.f64 A #s(literal 6 binary64))))) #s(literal -2 binary64)) A)
(* A (- (* -1/2 (/ B (pow A 2))) (* 2 (/ 1 B))))
(*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 A A)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (* 1/8 (/ (pow B 3) (pow A 4)))) (* 2 (/ 1 B))))
(*.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 B #s(literal 3 binary64))) (pow.f64 A #s(literal 4 binary64)))) (/.f64 #s(literal 2 binary64) B)) A)
(* A (- (+ (* -1/2 (/ B (pow A 2))) (+ (* -1/16 (/ (pow B 5) (pow A 6))) (* 1/8 (/ (pow B 3) (pow A 4))))) (* 2 (/ 1 B))))
(*.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) A) (/.f64 B A) (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 A #s(literal 6 binary64))) #s(literal -1/16 binary64) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 B #s(literal 3 binary64))) (pow.f64 A #s(literal 4 binary64))))) (/.f64 #s(literal 2 binary64) B)) A)
(* 1/2 (/ B A))
(*.f64 (/.f64 B A) #s(literal 1/2 binary64))
(* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* B C) A))) A))
(/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 B (/.f64 C A) B)) (neg.f64 A))
(* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) (* A B))) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (*.f64 A B)) (*.f64 C B))) (neg.f64 A))) (neg.f64 A))
(* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) (* A B))) (* 1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) B))) A)) (* 1/2 (* B C))) A)) (* -1/2 B)) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) B) C (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 B #s(literal 4 binary64))) C (*.f64 (neg.f64 C) (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) (*.f64 A B)) (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) B))) (neg.f64 A))) (neg.f64 A))) (neg.f64 A))
(* 180 (/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64)) #s(literal 180 binary64))
(/ (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)) (PI))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) (PI.f64))
(atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B))
(* 180 (atan (/ (- (+ C (* -1 A)) (sqrt (+ (pow B 2) (pow (+ C (* -1 A)) 2)))) B)))
(*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (hypot.f64 (-.f64 C A) B)) B)) #s(literal 180 binary64))
(* -1 A)
(neg.f64 A)
(* -1 (* A (+ 1 (* -1 (/ C A)))))
(*.f64 (neg.f64 A) (-.f64 #s(literal 1 binary64) (/.f64 C A)))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1/2 (/ (pow B 2) A))) A)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) C) A)) (neg.f64 A))
(* -1 (* A (+ 1 (* -1 (/ (+ C (* -1 (/ (+ (* 1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))) A)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 C (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (/.f64 (*.f64 (*.f64 B B) C) A))) A)) A)) (neg.f64 A))
(* (pow A 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow B 2) (pow C 2)) A)) (* 2 C)) A))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) C (/.f64 (fma.f64 C C (*.f64 B B)) (neg.f64 A))) A)) (*.f64 A A))
(* 1/2 (/ (pow B 2) A))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))
(* -1 (/ (- (* -1/2 (/ (* (pow B 2) C) A)) (* 1/2 (pow B 2))) A))
(/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (/.f64 (*.f64 (*.f64 B B) C) A))) A)
(* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) A) (*.f64 (*.f64 B B) C))) A) #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 B B))) (neg.f64 A))
(* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (+ (* -1 (* C (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) (* -1/2 (* (pow B 4) C))) A)) (* -1/2 (+ (* -1 (* (pow B 2) (pow C 2))) (* 1/4 (pow B 4))))) A)) (* -1/2 (* (pow B 2) C))) A)) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 B #s(literal 4 binary64))) C (*.f64 (neg.f64 C) (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) A) (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 C C) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))))) A) #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 B B)) C)) A) #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 B B))) (neg.f64 A))
(* -1/2 (/ (pow B 2) A))
(*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (* 1/2 (pow B 2))) A))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (*.f64 #s(literal 1/2 binary64) (*.f64 B B))) (neg.f64 A))
(* -1 (/ (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2)))) A))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (fma.f64 (/.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 B B)))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (pow A 6))) (+ (* -1/8 (/ (pow B 4) (pow A 2))) (+ (* 1/16 (/ (pow B 6) (pow A 4))) (* 1/2 (pow B 2))))) A))
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 B #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 A #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 4 binary64)) A) (fma.f64 (/.f64 (pow.f64 B #s(literal 6 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 B B))))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow A 2)))) A))
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (*.f64 #s(literal -1/2 binary64) B)) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (* 1/8 (/ (pow B 3) (pow A 2))))) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 B #s(literal 5 binary64))) (pow.f64 A #s(literal 4 binary64))))) (neg.f64 A))
(* -1 (/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow A 4))) (+ (* 1/8 (/ (pow B 3) (pow A 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* (pow A 6) B)))))) A))
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 A #s(literal 4 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 A #s(literal 6 binary64))) (/.f64 (*.f64 (pow.f64 B #s(literal 8 binary64)) #s(literal 5/64 binary64)) B) (*.f64 (/.f64 #s(literal 1/8 binary64) A) (/.f64 (pow.f64 B #s(literal 3 binary64)) A))))) (neg.f64 A))
(/ (- (* 2 C) (* 2 A)) B)
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 C A)) B)
(/ (- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A)) B)
(/.f64 (fma.f64 (/.f64 (*.f64 B B) (-.f64 A C)) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 #s(literal 2 binary64) C (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal -2 binary64) A))) B)
(/ (- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A)) B)
(/.f64 (fma.f64 #s(literal 2 binary64) C (fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal -2 binary64) A))) B)
0
#s(literal 0 binary64)
(- A C)
(-.f64 A C)
(- (+ A (* 1/2 (/ (pow B 2) (- A C)))) C)
(-.f64 (fma.f64 (/.f64 (*.f64 B B) (-.f64 A C)) #s(literal 1/2 binary64) A) C)
(- (+ A (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) C)
(-.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) A) C)
(- (+ A (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) C)
(-.f64 (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 B B)) (pow.f64 (-.f64 A C) #s(literal 5 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) A) C)
(pow (- A C) 2)
(pow.f64 (-.f64 A C) #s(literal 2 binary64))
(+ (pow B 2) (pow (- A C) 2))
(fma.f64 B B (pow.f64 (-.f64 A C) #s(literal 2 binary64)))
(- (* 2 C) (* 2 A))
(*.f64 #s(literal 2 binary64) (-.f64 C A))
(- (+ (* -1/2 (/ (pow B 2) (- A C))) (* 2 C)) (* 2 A))
(fma.f64 (/.f64 (*.f64 B B) (-.f64 A C)) #s(literal -1/2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 C A)))
(- (+ (* 2 C) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow (- A C) 3))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(fma.f64 #s(literal 2 binary64) C (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 (-.f64 A C) #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)))
(- (+ (* 2 C) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow (- A C) 5))) (* 1/8 (/ 1 (pow (- A C) 3))))) (* 1/2 (/ 1 (- A C)))))) (* 2 A))
(fma.f64 #s(literal 2 binary64) C (fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 (-.f64 A C) #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) (-.f64 A C))) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)))
(* -1/2 (/ B C))
(*.f64 (/.f64 B C) #s(literal -1/2 binary64))
(* B (- (* 1/8 (/ (pow B 2) (pow C 3))) (* 1/2 (/ 1 C))))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 C #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) C)) B)
(* B (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow C 5))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(*.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 C #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) C)) B)
(* B (- (* (pow B 2) (+ (* (pow B 2) (- (* 5/128 (/ (pow B 2) (pow C 7))) (* 1/16 (/ 1 (pow C 5))))) (* 1/8 (/ 1 (pow C 3))))) (* 1/2 (/ 1 C))))
(*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 5/128 binary64) (*.f64 B B)) (pow.f64 C #s(literal 7 binary64))) (/.f64 #s(literal 1/16 binary64) (pow.f64 C #s(literal 5 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/8 binary64) (pow.f64 C #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) C)) B)
(+ (* 1/2 (/ (pow B 2) A)) (* 2 A))
(fma.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) A))
(+ (* 2 A) (* (pow B 2) (+ (* -1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 A #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal 2 binary64) A))
(+ (* 2 A) (* (pow B 2) (+ (* (pow B 2) (- (* 1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A)))))
(fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 B B)) (pow.f64 A #s(literal 5 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 3 binary64)))) (*.f64 B B) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal 2 binary64) A))
(/ (+ (* -2 A) (* -1/2 (/ (pow B 2) A))) B)
(/.f64 (fma.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) A)) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* 1/8 (/ (pow B 2) (pow A 3))) (* 1/2 (/ 1 A))))) B)
(/.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 B B)) (pow.f64 A #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)) B)
(/ (+ (* -2 A) (* (pow B 2) (- (* (pow B 2) (+ (* -1/16 (/ (pow B 2) (pow A 5))) (* 1/8 (/ 1 (pow A 3))))) (* 1/2 (/ 1 A))))) B)
(/.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 B B) (pow.f64 A #s(literal 5 binary64))) #s(literal -1/16 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 3 binary64)))) (*.f64 B B)) (/.f64 #s(literal 1/2 binary64) A)) (*.f64 B B) (*.f64 #s(literal -2 binary64) A)) B)
(- (/ C B) (+ 1 (/ A B)))
(-.f64 (-.f64 (/.f64 C B) #s(literal 1 binary64)) (/.f64 A B))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B)))
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (-.f64 (/.f64 C B) #s(literal 1 binary64)) (/.f64 A B)))
(- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B))) (+ 1 (/ A B)))
(-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (/.f64 C B))) (+.f64 (/.f64 A B) #s(literal 1 binary64)))
(* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) #s(literal 1 binary64)) B)
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64)))) B B)
(* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 (-.f64 A C) #s(literal 6 binary64))) (pow.f64 B #s(literal 6 binary64))))) B B)
(pow B 2)
(*.f64 B B)
(* (pow B 2) (+ 1 (/ (pow (- A C) 2) (pow B 2))))
(*.f64 (+.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (*.f64 B B)) #s(literal 1 binary64)) (*.f64 B B))
(* -1 B)
(neg.f64 B)
(* B (- (/ C B) (+ 1 (/ A B))))
(*.f64 (-.f64 (-.f64 (/.f64 C B) #s(literal 1 binary64)) (/.f64 A B)) B)
(* B (- (+ (* -1/2 (/ (pow (- A C) 2) (pow B 2))) (/ C B)) (+ 1 (/ A B))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (-.f64 (-.f64 (/.f64 C B) #s(literal 1 binary64)) (/.f64 A B))) B)
(* B (- (+ (* 1/8 (/ (pow (- A C) 4) (pow B 4))) (/ C B)) (+ 1 (+ (* 1/2 (/ (pow (- A C) 2) (pow B 2))) (/ A B)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (-.f64 (/.f64 C B) (+.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) #s(literal 1 binary64)) (/.f64 A B)))) B)
(- (/ C B) 1)
(-.f64 (/.f64 C B) #s(literal 1 binary64))
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (/ C B)) 1)
(fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (*.f64 C C) B) (-.f64 (/.f64 C B) #s(literal 1 binary64)))
(- (+ (* -1/2 (/ (pow C 2) (pow B 2))) (+ (* 1/8 (/ (pow C 4) (pow B 4))) (/ C B))) 1)
(-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (*.f64 C C) B) (fma.f64 (/.f64 (pow.f64 C #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal 1/8 binary64) (/.f64 C B))) #s(literal 1 binary64))
(* B (+ 1 (/ A B)))
(fma.f64 (/.f64 A B) B B)
(* B (+ 1 (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B))))
(fma.f64 (fma.f64 (/.f64 (*.f64 A A) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 A B)) B B)
(* B (+ 1 (+ (* -1/8 (/ (pow A 4) (pow B 4))) (+ (* 1/2 (/ (pow A 2) (pow B 2))) (/ A B)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 A #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 A A) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 A B))) B B)
(- (+ (* -1 (/ A B)) (* -1/2 (/ (pow A 2) (pow B 2)))) 1)
(-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (*.f64 A A) B) (/.f64 (neg.f64 A) B)) #s(literal 1 binary64))
(- (+ (* -1 (/ A B)) (+ (* -1/2 (/ (pow A 2) (pow B 2))) (* 1/8 (/ (pow A 4) (pow B 4))))) 1)
(-.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) B) (/.f64 (*.f64 A A) B) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 A #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64)))) (/.f64 A B)) #s(literal 1 binary64))
1
#s(literal 1 binary64)
(- (+ 1 (/ C B)) (/ A B))
(+.f64 #s(literal 1 binary64) (/.f64 (-.f64 C A) B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1/2 (/ (pow (- A C) 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal -1/2 binary64) (neg.f64 (-.f64 C A))) B))
(+ 1 (* -1 (/ (+ (* -1 (- C A)) (* -1 (/ (+ (* -1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (neg.f64 (-.f64 C A)) (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 #s(literal 1/2 binary64) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))) B)) B))
(* -1 (* B (+ 1 (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))
(*.f64 (neg.f64 B) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) #s(literal 1 binary64)))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (* 1/2 (/ (pow (- A C) 2) (pow B 2)))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 (-.f64 A C) #s(literal 4 binary64))) (pow.f64 B #s(literal 4 binary64)))) B B))
(* -1 (* B (+ 1 (+ (* -1/8 (/ (pow (- A C) 4) (pow B 4))) (+ (* 1/16 (/ (pow (- A C) 6) (pow B 6))) (* 1/2 (/ (pow (- A C) 2) (pow B 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) (pow.f64 B #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) (/.f64 #s(literal 1/2 binary64) B) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 (-.f64 A C) #s(literal 6 binary64))) (pow.f64 B #s(literal 6 binary64))))) B B))
(* -1 (* B (- (* -1 (/ (- C A) B)) 1)))
(*.f64 (-.f64 (/.f64 (neg.f64 (-.f64 C A)) B) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (- (+ C (* 1/2 (/ (pow (- A C) 2) B))) A) B)) 1)))
(*.f64 (-.f64 (/.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) B) #s(literal 1/2 binary64) C) A) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(* -1 (* B (- (* -1 (/ (- (+ C (* -1 (/ (- (* 1/8 (/ (pow (- A C) 4) (pow B 2))) (* 1/2 (pow (- A C) 2))) B))) A) B)) 1)))
(*.f64 (-.f64 (/.f64 (-.f64 (-.f64 C (/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) B) (/.f64 (pow.f64 (-.f64 A C) #s(literal 4 binary64)) B) (*.f64 #s(literal -1/2 binary64) (pow.f64 (-.f64 A C) #s(literal 2 binary64)))) B)) A) (neg.f64 B)) #s(literal 1 binary64)) (neg.f64 B))
(+ 1 (/ C B))
(+.f64 (/.f64 C B) #s(literal 1 binary64))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1/2 (/ (pow C 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 C C) B) #s(literal -1/2 binary64) (neg.f64 C)) B))
(+ 1 (* -1 (/ (+ (* -1 C) (* -1 (/ (+ (* -1/8 (/ (pow C 4) (pow B 2))) (* 1/2 (pow C 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 C #s(literal 4 binary64)) B) (*.f64 #s(literal 1/2 binary64) (*.f64 C C))) (neg.f64 B)) C) B))
(* -1 (* B (+ 1 (* -1 (/ A B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A B)) (neg.f64 B))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 A A) B) #s(literal -1/2 binary64) A) B)) (neg.f64 B))
(* -1 (* B (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 A #s(literal 4 binary64)) B) (*.f64 (*.f64 A A) #s(literal 1/2 binary64))) B)) B)) (neg.f64 B))
(+ 1 (* -1 (/ A B)))
(-.f64 #s(literal 1 binary64) (/.f64 A B))
(+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow A 2) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 A A) B) #s(literal -1/2 binary64) A) B))
(+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* -1/8 (/ (pow A 4) (pow B 2))) (* 1/2 (pow A 2))) B))) B)))
(-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) B) (/.f64 (pow.f64 A #s(literal 4 binary64)) B) (*.f64 (*.f64 A A) #s(literal 1/2 binary64))) B)) B))
(* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B))
(/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (/ 1 B) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (+.f64 (/.f64 #s(literal 1 binary64) B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* -1/2 (* (/ (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 C (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))))) B) #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1 binary64) B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B)))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(+ (* -1 (/ (+ A (sqrt (+ (pow A 2) (pow B 2)))) B)) (* C (- (+ (* C (+ (* -1/2 (* (/ (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) B) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* -1/2 (* (/ (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))) B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (/ 1 B)) (* -1 (* (/ A B) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))))) B)) C (+.f64 (/.f64 #s(literal 1 binary64) B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (/.f64 A B)))) C (/.f64 (+.f64 (hypot.f64 A B) A) (neg.f64 B)))
(sqrt (+ (pow A 2) (pow B 2)))
(hypot.f64 A B)
(+ (sqrt (+ (pow A 2) (pow B 2))) (* -1 (* (* A C) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))
(-.f64 (hypot.f64 A B) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (*.f64 A C)))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) C) (neg.f64 A))) C (hypot.f64 A B))
(+ (sqrt (+ (pow A 2) (pow B 2))) (* C (+ (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))) (* C (+ (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (* 1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B))))))) C (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (neg.f64 A))) C (hypot.f64 A B))
(+ (pow A 2) (pow B 2))
(fma.f64 A A (*.f64 B B))
(+ (* -2 (* A C)) (+ (pow A 2) (pow B 2)))
(fma.f64 (*.f64 #s(literal -2 binary64) A) C (fma.f64 A A (*.f64 B B)))
(+ (* C (+ C (* -2 A))) (+ (pow A 2) (pow B 2)))
(fma.f64 (fma.f64 #s(literal -2 binary64) A C) C (fma.f64 A A (*.f64 B B)))
(* -1 (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(neg.f64 (+.f64 (hypot.f64 A B) A))
(- (* C (- 1 (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) A)) C) (+.f64 (hypot.f64 A B) A))
(- (* C (- (+ 1 (* -1/2 (* (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))) (sqrt (/ 1 (+ (pow A 2) (pow B 2))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) C)) (neg.f64 A)))) C) (+.f64 (hypot.f64 A B) A))
(- (* C (- (+ 1 (* C (- (* -1/2 (* (* A (* C (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2)))))) (sqrt (/ 1 (pow (+ (pow A 2) (pow B 2)) 3))))) (* 1/2 (* (sqrt (/ 1 (+ (pow A 2) (pow B 2)))) (- 1 (/ (pow A 2) (+ (pow A 2) (pow B 2))))))))) (* -1 (* A (sqrt (/ 1 (+ (pow A 2) (pow B 2)))))))) (+ A (sqrt (+ (pow A 2) (pow B 2)))))
(-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 A A (*.f64 B B)) #s(literal 3 binary64)))) (*.f64 (*.f64 A C) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B))))) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 A A) (fma.f64 A A (*.f64 B B)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B))))))) C #s(literal 1 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 A A (*.f64 B B)))) A)) C) (+.f64 (hypot.f64 A B) A))
(- (* C (+ (* -1/2 (/ C (pow B 2))) (/ 1 B))) 1)
(-.f64 (*.f64 (fma.f64 (/.f64 C (*.f64 B B)) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) B)) C) #s(literal 1 binary64))
(- (* C (+ (* C (- (* 1/8 (/ (pow C 2) (pow B 4))) (* 1/2 (/ 1 (pow B 2))))) (/ 1 B))) 1)
(-.f64 (*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 C C)) (pow.f64 B #s(literal 4 binary64))) (/.f64 #s(literal 1/2 binary64) (*.f64 B B))) C (/.f64 #s(literal 1 binary64) B)) C) #s(literal 1 binary64))
(* -1 (/ (+ A (* -1 A)) B))
(/.f64 #s(literal 0 binary64) B)
(+ (* -1 (/ (+ A (* -1 A)) B)) (* -1/2 (/ B C)))
(fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (* -1/2 (/ (* A B) (pow C 2)))))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 A (/.f64 B (*.f64 C C)) (/.f64 B C)) (/.f64 #s(literal 0 binary64) B))
(+ (* -1 (/ (+ A (* -1 A)) B)) (+ (* -1/2 (/ B C)) (+ (* -1/2 (/ (* A B) (pow C 2))) (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (* B (pow C 3)))))))
(+.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 A (/.f64 B (*.f64 C C)) (/.f64 B C)) (/.f64 #s(literal 0 binary64) B)) (*.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 A A) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (*.f64 (pow.f64 C #s(literal 3 binary64)) B)) #s(literal 1/2 binary64)))
C
(* C (+ 1 (* -1 (/ A C))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A C)) C)
(* C (+ 1 (+ (* -1 (/ A C)) (* 1/2 (/ (pow B 2) (pow C 2))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 B B) C) (/.f64 #s(literal 1/2 binary64) C) (/.f64 (neg.f64 A) C)) C C)
(* C (+ 1 (+ (* -1 (/ A C)) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 3))) (* 1/2 (/ (pow B 2) (pow C 2)))))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 B C) (/.f64 B C) (/.f64 (*.f64 (*.f64 B B) A) (pow.f64 C #s(literal 3 binary64)))) (/.f64 (neg.f64 A) C)) C C)
(pow C 2)
(*.f64 C C)
(* (pow C 2) (+ 1 (* -2 (/ A C))))
(*.f64 (fma.f64 (/.f64 A C) #s(literal -2 binary64) #s(literal 1 binary64)) (*.f64 C C))
(* (pow C 2) (+ 1 (+ (* -2 (/ A C)) (+ (/ (pow A 2) (pow C 2)) (/ (pow B 2) (pow C 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 A C) #s(literal -2 binary64) #s(literal 1 binary64)) (/.f64 (fma.f64 A A (*.f64 B B)) (*.f64 C C))) (*.f64 C C))
(* -1 (+ A (* -1 A)))
#s(literal 0 binary64)
(- (* -1/2 (/ (pow B 2) C)) (+ A (* -1 A)))
(fma.f64 (/.f64 (*.f64 B B) C) #s(literal -1/2 binary64) #s(literal 0 binary64))
(- (* -1/2 (/ (* A (pow B 2)) (pow C 2))) (+ A (+ (* -1 A) (* 1/2 (/ (pow B 2) C)))))
(-.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) C) (*.f64 A (/.f64 (*.f64 B B) C))) (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (*.f64 B B) C) #s(literal -1/2 binary64))))
(- (* 1/2 (/ (+ (* -1 (* (pow A 2) (pow B 2))) (* 1/4 (pow B 4))) (pow C 3))) (+ A (+ (* -1 A) (+ (* 1/2 (/ (* A (pow B 2)) (pow C 2))) (* 1/2 (/ (pow B 2) C))))))
(-.f64 (*.f64 (/.f64 (fma.f64 (*.f64 (neg.f64 B) B) (*.f64 A A) (*.f64 #s(literal 1/4 binary64) (pow.f64 B #s(literal 4 binary64)))) (pow.f64 C #s(literal 3 binary64))) #s(literal 1/2 binary64)) (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 (*.f64 B B) C) (/.f64 A C) (/.f64 (*.f64 B B) C)))))
(/ (+ (* -1/2 B) (* 1/8 (/ (pow B 3) (pow C 2)))) C)
(/.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 3 binary64)) C) (*.f64 #s(literal -1/2 binary64) B)) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (* 1/8 (/ (pow B 3) (pow C 2))))) C)
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 3 binary64)) C) (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 B #s(literal 5 binary64))) (pow.f64 C #s(literal 4 binary64))))) C)
(/ (+ (* -1/2 B) (+ (* -1/16 (/ (pow B 5) (pow C 4))) (+ (* 1/8 (/ (pow B 3) (pow C 2))) (* 1/2 (/ (+ (* 1/64 (pow B 8)) (* 1/16 (pow B 8))) (* B (pow C 6))))))) C)
(/.f64 (fma.f64 #s(literal -1/2 binary64) B (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 C #s(literal 4 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 C #s(literal 6 binary64))) (/.f64 (*.f64 (pow.f64 B #s(literal 8 binary64)) #s(literal 5/64 binary64)) B) (*.f64 (/.f64 #s(literal 1/8 binary64) C) (/.f64 (pow.f64 B #s(literal 3 binary64)) C))))) C)
(* 2 (/ C B))
(*.f64 (/.f64 C B) #s(literal 2 binary64))
(* -1 (* C (- (* 2 (/ A (* B C))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (*.f64 (/.f64 (/.f64 A B) C) #s(literal 2 binary64)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* 1/2 (/ B C))) C)) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 (fma.f64 (/.f64 B C) #s(literal 1/2 binary64) (*.f64 (/.f64 A B) #s(literal -2 binary64))) (neg.f64 C)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (* -1 (/ (+ (* -2 (/ A B)) (* -1 (/ (+ (* -1/2 B) (* -1/2 (/ (* A B) C))) C))) C)) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (/.f64 (fma.f64 (/.f64 A B) #s(literal -2 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 A (/.f64 B C) B)) (neg.f64 C))) (neg.f64 C)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))
(* 180 (/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI)))
(*.f64 (/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64)) #s(literal 180 binary64))
(/ (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))) (PI))
(/.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) (PI.f64))
(atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B)))
(atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B)))
(* 180 (atan (* -1 (/ (+ A (+ (sqrt (+ (pow B 2) (pow (+ A (* -1 C)) 2))) (* -1 C))) B))))
(*.f64 (atan.f64 (/.f64 (+.f64 (-.f64 (hypot.f64 (-.f64 A C) B) C) A) (neg.f64 B))) #s(literal 180 binary64))
(* -1 C)
(neg.f64 C)
(* -1 (* C (+ 1 (* -1 (/ A C)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 A C)) (neg.f64 C))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1/2 (/ (pow B 2) C))) C)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 B B) C) #s(literal -1/2 binary64) A) C)) (neg.f64 C))
(* -1 (* C (+ 1 (* -1 (/ (+ A (* -1 (/ (+ (* 1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C))) C)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 A (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (*.f64 A (/.f64 (*.f64 B B) C)))) C)) C)) (neg.f64 C))
(* (pow C 2) (+ 1 (* -1 (/ (+ (* -1 (/ (+ (pow A 2) (pow B 2)) C)) (* 2 A)) C))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) A (/.f64 (fma.f64 A A (*.f64 B B)) (neg.f64 C))) C)) (*.f64 C C))
(* 2 C)
(*.f64 #s(literal 2 binary64) C)
(* -1 (* C (- (* 2 (/ A C)) 2)))
(*.f64 (fma.f64 (/.f64 A C) #s(literal 2 binary64) #s(literal -2 binary64)) (neg.f64 C))
(* -1 (* C (- (* -1 (/ (- (* 1/2 (/ (pow B 2) C)) (* 2 A)) C)) 2)))
(*.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 (*.f64 B B) C) #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) A)) C) #s(literal -1 binary64) #s(literal -2 binary64)) (neg.f64 C))
(* -1 (* C (- (* -1 (/ (- (* -1 (/ (- (* -1/2 (/ (* A (pow B 2)) C)) (* 1/2 (pow B 2))) C)) (* 2 A)) C)) 2)))
(*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B B (*.f64 A (/.f64 (*.f64 B B) C)))) C) (*.f64 #s(literal 2 binary64) A)) C) #s(literal -1 binary64) #s(literal -2 binary64)) (neg.f64 C))
(* -1 (* C (- (* -1/2 (/ B (pow C 2))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 C C)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (* 1/8 (/ (pow B 3) (pow C 4)))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) C) (/.f64 B C) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 B #s(literal 3 binary64))) (pow.f64 C #s(literal 4 binary64)))) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))
(* -1 (* C (- (+ (* -1/2 (/ B (pow C 2))) (+ (* -1/16 (/ (pow B 5) (pow C 6))) (* 1/8 (/ (pow B 3) (pow C 4))))) (* 2 (/ 1 B)))))
(*.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) C) (/.f64 B C) (fma.f64 (/.f64 (pow.f64 B #s(literal 5 binary64)) (pow.f64 C #s(literal 6 binary64))) #s(literal -1/16 binary64) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 B #s(literal 3 binary64))) (pow.f64 C #s(literal 4 binary64))))) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))

rewrite113.0ms (1.5%)

Memory
-31.8MiB live, 94.0MiB allocated; 41ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067752
0100742
1315702
02234551
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
29 → 158
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64))
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))))
(/.f64 #s(literal 0 binary64) B)
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))
(PI.f64)
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64)))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64)))
(/.f64 (*.f64 B B) A)
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B))
Outputs
(*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (pow.f64 B #s(literal -1 binary64)))
(*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))))
(*.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 B #s(literal -1 binary64))) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A)))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64))) (pow.f64 B #s(literal -1 binary64))) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))))) (neg.f64 B))
(/.f64 (*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) #s(literal -1 binary64)) (neg.f64 B))
(/.f64 (*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A)))
(/.f64 (*.f64 (pow.f64 B #s(literal -1 binary64)) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)))) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))))) (neg.f64 B))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) #s(literal -1 binary64)) (*.f64 (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A)) (neg.f64 B)))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) #s(literal 1 binary64)) (*.f64 (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A)) B))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64))) #s(literal -1 binary64)) (*.f64 (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))) (neg.f64 B)))
(/.f64 (*.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))) B))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (*.f64 (neg.f64 B) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A))))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)))) (*.f64 (neg.f64 B) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (*.f64 B (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)))) (*.f64 B (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B)) (neg.f64 (PI.f64))))
(atan.f64 (/.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) B))
#s(literal 0 binary64)
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64)))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64)))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64)))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64)))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 #s(literal 180 binary64) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (sqrt.f64 (PI.f64))) (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 #s(literal -180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (*.f64 #s(literal -180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) #s(literal 180 binary64)) (PI.f64))
(neg.f64 (/.f64 (*.f64 #s(literal -180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))) (PI.f64)))
(neg.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) #s(literal 180 binary64)) (neg.f64 (PI.f64))))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (sqrt.f64 (PI.f64))))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (cbrt.f64 (PI.f64))))
(*.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)) #s(literal 180 binary64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) #s(literal 180 binary64)) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) #s(literal 180 binary64)) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (*.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))))) #s(literal 180 binary64)) (neg.f64 (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))))) (neg.f64 (PI.f64)))
(/.f64 (neg.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) #s(literal 180 binary64))) (neg.f64 (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) #s(literal 180 binary64)) (PI.f64))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (cbrt.f64 (PI.f64)))
(/.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (sqrt.f64 (PI.f64))) (sqrt.f64 (PI.f64)))
(/.f64 (neg.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))))) (neg.f64 (neg.f64 (PI.f64))))
(/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))))) (neg.f64 (PI.f64)))
(/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64))
(neg.f64 (/.f64 (neg.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))))) (PI.f64)))
(neg.f64 (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))) (neg.f64 (PI.f64))))
(atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B)))
(*.f64 (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (neg.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))))
(*.f64 (fabs.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (fabs.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))))
(pow.f64 (*.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 1 binary64))
#s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))))
(*.f64 (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 C C) (*.f64 (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A))) (+.f64 C (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A)))
(/.f64 (-.f64 (pow.f64 C #s(literal 3 binary64)) (pow.f64 (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A) #s(literal 3 binary64))) (fma.f64 C C (fma.f64 (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A) (*.f64 C (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (neg.f64 (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)))) (neg.f64 (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)))) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)))) (*.f64 #s(literal 2 binary64) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A)))
(/.f64 (-.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64))) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (-.f64 C A) #s(literal 2 binary64)) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A))) (/.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A))))
(-.f64 (/.f64 (pow.f64 (-.f64 C A) #s(literal 3 binary64)) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))) (/.f64 (pow.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64))) #s(literal 3/2 binary64)) (+.f64 (fma.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (-.f64 C A) #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) (pow.f64 (-.f64 C A) #s(literal 2 binary64)))))
(-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))))
(-.f64 C (+.f64 (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (pow.f64 (hypot.f64 C B) #s(literal 2 binary64)))) A))
#s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))
(PI.f64)
#s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C)))
#s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64)))
(*.f64 (fabs.f64 B) (/.f64 (fabs.f64 B) A))
(*.f64 (neg.f64 B) (/.f64 (neg.f64 B) A))
(*.f64 (/.f64 B A) B)
(*.f64 B (/.f64 B A))
(/.f64 (*.f64 (neg.f64 B) B) (neg.f64 A))
(/.f64 (*.f64 B B) (neg.f64 (neg.f64 A)))
(/.f64 (*.f64 B B) A)
(neg.f64 (/.f64 (*.f64 (neg.f64 B) B) A))
(neg.f64 (/.f64 (*.f64 B B) (neg.f64 A)))
(/.f64 (neg.f64 (neg.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))))) (neg.f64 B))
(/.f64 (neg.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64)))) B)
(/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) (neg.f64 B))
(neg.f64 (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (*.f64 (/.f64 B A) B) #s(literal -1/2 binary64))) B))

eval101.0ms (1.3%)

Memory
-23.5MiB live, 65.2MiB allocated; 11ms collecting garbage
Compiler

Compiled 15 738 to 2 243 computations (85.7% saved)

prune28.0ms (0.4%)

Memory
12.5MiB live, 56.6MiB allocated; 5ms collecting garbage
Pruning

23 alts after pruning (13 fresh and 10 done)

PrunedKeptTotal
New3456351
Fresh178
Picked145
Done066
Total34723370
Accuracy
99.7%
Counts
370 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
24.7%
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
15.1%
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
27.3%
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
24.5%
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (cbrt.f64 (PI.f64))))
24.5%
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (sqrt.f64 (PI.f64))))
27.3%
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
55.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
32.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
68.2%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
32.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
38.4%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))) B))) (PI.f64)))
22.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
34.9%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
26.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
38.4%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
27.3%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
22.5%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
24.7%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
28.8%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 C C)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))))) (PI.f64)))
42.0%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
38.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
21.1%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
24.6%
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Compiler

Compiled 2 234 to 932 computations (58.3% saved)

regimes84.0ms (1.1%)

Memory
7.0MiB live, 144.3MiB allocated; 33ms collecting garbage
Counts
40 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 C C)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 C C))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))) B)) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (sqrt.f64 (PI.f64))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (pow.f64 (cbrt.f64 (PI.f64)) #s(literal 2 binary64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (cbrt.f64 (PI.f64))))
Outputs
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))
Calls

7 calls:

21.0ms
B
12.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
10.0ms
A
10.0ms
C
10.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
Results
AccuracySegmentsBranch
75.3%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
75.3%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
75.3%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
75.3%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
83.5%3A
74.1%3B
80.0%3C
Compiler

Compiled 84 to 74 computations (11.9% saved)

regimes12.0ms (0.2%)

Memory
20.6MiB live, 20.6MiB allocated; 0ms collecting garbage
Counts
37 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 C C)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 C C))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))) B)) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (sqrt.f64 (PI.f64))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 C B)) B))) (PI.f64)))
Outputs
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
Calls

1 calls:

10.0ms
A
Results
AccuracySegmentsBranch
81.5%3A
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes79.0ms (1%)

Memory
-45.7MiB live, 57.3MiB allocated; 9ms collecting garbage
Counts
35 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (-.f64 (*.f64 (/.f64 B (*.f64 C C)) #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) B)) (neg.f64 C))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 C C))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 C C (*.f64 B B))))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (-.f64 C A) (sqrt.f64 #s(approx (+ (pow (- A C) 2) (pow B 2)) (fma.f64 B B (*.f64 A A)))))) B)) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 B (/.f64 A C) B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 B C) A B) C) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 (/.f64 #s(literal 180 binary64) (sqrt.f64 (PI.f64))) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) (sqrt.f64 (PI.f64))))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
Calls

6 calls:

27.0ms
A
9.0ms
C
7.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
7.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
7.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Results
AccuracySegmentsBranch
75.3%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
75.3%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
75.3%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
75.3%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
66.8%2C
70.1%3A
Compiler

Compiled 83 to 71 computations (14.5% saved)

regimes24.0ms (0.3%)

Memory
44.5MiB live, 44.5MiB allocated; 0ms collecting garbage
Counts
26 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (*.f64 (/.f64 (*.f64 B B) A) #s(literal -1/2 binary64))) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 (-.f64 (/.f64 (neg.f64 C) B) #s(literal 1 binary64)) (neg.f64 B))) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (+ (sqrt (+ (* B B) (* A A))) A) (fma.f64 (fma.f64 (/.f64 A B) #s(literal 1/2 binary64) #s(literal 1 binary64)) A B)) (neg.f64 B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (/.f64 (*.f64 B B) A) #s(literal 1/2 binary64))))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
Calls

4 calls:

6.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
6.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
5.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
5.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
Results
AccuracySegmentsBranch
75.3%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
75.3%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
75.3%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
75.3%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 81 to 65 computations (19.8% saved)

regimes24.0ms (0.3%)

Memory
-0.6MiB live, 42.9MiB allocated; 6ms collecting garbage
Counts
21 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
Calls

4 calls:

8.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
5.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
5.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
4.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
Results
AccuracySegmentsBranch
75.3%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
75.3%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
75.3%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
75.3%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 81 to 65 computations (19.8% saved)

regimes21.0ms (0.3%)

Memory
3.9MiB live, 48.5MiB allocated; 3ms collecting garbage
Counts
20 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 B C) #s(literal 0 binary64))))) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (fma.f64 (/.f64 B C) #s(literal -1/2 binary64) (/.f64 #s(literal 0 binary64) B)))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
Calls

4 calls:

7.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
4.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
4.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
4.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
Results
AccuracySegmentsBranch
75.3%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
75.3%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
75.3%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
75.3%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 81 to 65 computations (19.8% saved)

regimes34.0ms (0.4%)

Memory
-33.7MiB live, 66.1MiB allocated; 12ms collecting garbage
Counts
17 → 5
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))
Calls

6 calls:

9.0ms
B
7.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
5.0ms
A
4.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
4.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
Results
AccuracySegmentsBranch
63.4%3A
67.2%2B
73.0%5(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
69.9%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
69.9%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
69.9%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 83 to 71 computations (14.5% saved)

regimes33.0ms (0.4%)

Memory
-3.3MiB live, 42.3MiB allocated; 3ms collecting garbage
Counts
16 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 C B) #s(literal 2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(approx (- C (sqrt (+ (* C C) (* B B)))) (*.f64 #s(literal 2 binary64) C)) B))) (PI.f64)))
(*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (/.f64 #s(literal 180 binary64) (PI.f64)))
(/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 #s(literal -1/2 binary64) (/.f64 B C))))) #s(literal 180 binary64)) (PI.f64))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
Calls

6 calls:

12.0ms
C
5.0ms
B
4.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
4.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
4.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Results
AccuracySegmentsBranch
62.4%3C
63.0%3B
65.2%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
65.2%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
65.2%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
65.2%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
Compiler

Compiled 83 to 71 computations (14.5% saved)

regimes12.0ms (0.2%)

Memory
28.6MiB live, 28.6MiB allocated; 0ms collecting garbage
Counts
10 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (- C (sqrt (+ (* C C) (* B B)))) B) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 A B) #s(literal -2 binary64)))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
Calls

4 calls:

3.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
3.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
3.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
3.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
Results
AccuracySegmentsBranch
64.5%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
64.5%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
64.5%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
64.5%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 81 to 65 computations (19.8% saved)

regimes18.0ms (0.2%)

Memory
12.9MiB live, 59.4MiB allocated; 2ms collecting garbage
Counts
7 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))
Calls

7 calls:

3.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
3.0ms
C
3.0ms
B
3.0ms
A
2.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
Results
AccuracySegmentsBranch
59.6%3C
60.3%4B
53.2%3A
59.5%5(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
56.3%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
56.3%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
56.3%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
Compiler

Compiled 84 to 74 computations (11.9% saved)

regimes7.0ms (0.1%)

Memory
-34.5MiB live, 12.3MiB allocated; 2ms collecting garbage
Counts
6 → 4
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Calls

2 calls:

4.0ms
C
2.0ms
B
Results
AccuracySegmentsBranch
60.3%4B
55.7%4C
Compiler

Compiled 2 to 6 computations (-200% saved)

regimes30.0ms (0.4%)

Memory
-17.4MiB live, 40.5MiB allocated; 22ms collecting garbage
Counts
4 → 3
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 #s(literal 0 binary64) B))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Calls

7 calls:

19.0ms
A
2.0ms
B
2.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
2.0ms
C
2.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
Results
AccuracySegmentsBranch
33.5%4A
30.8%2C
46.8%3(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
46.8%3(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
46.8%3(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
46.8%3(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
51.8%3B
Compiler

Compiled 84 to 74 computations (11.9% saved)

regimes6.0ms (0.1%)

Memory
15.9MiB live, 15.9MiB allocated; 0ms collecting garbage
Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64)))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Calls

5 calls:

1.0ms
B
1.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
1.0ms
(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
1.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
1.0ms
(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
Results
AccuracySegmentsBranch
43.7%2(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
43.7%2(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
43.7%2(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
43.7%2(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
43.8%2B
Compiler

Compiled 82 to 68 computations (17.1% saved)

regimes8.0ms (0.1%)

Memory
15.7MiB live, 15.7MiB allocated; 0ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Outputs
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Calls

7 calls:

1.0ms
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
1.0ms
B
1.0ms
C
1.0ms
A
1.0ms
(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
Results
AccuracySegmentsBranch
24.6%1A
24.6%1C
24.6%1(atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))))
24.6%1(/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))
24.6%1(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64)))
24.6%1(*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))
24.6%1B
Compiler

Compiled 84 to 74 computations (11.9% saved)

bsearch83.0ms (1.1%)

Memory
0.5MiB live, 92.3MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
26.0ms
2.9864914399908554e-128
3.8474479221330686e-126
49.0ms
-1.2405985978613662e+88
-2.5990594470951826e+81
Samples
36.0ms78×2valid
20.0ms145×0valid
8.0ms33×1valid
Compiler

Compiled 1 007 to 799 computations (20.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 46.0ms
adjust: 9.0ms (19.7% of total)
ival-pow2: 8.0ms (17.5% of total)
ival-mult: 8.0ms (17.5% of total)
ival-div: 6.0ms (13.1% of total)
ival-sub: 5.0ms (10.9% of total)
ival-sqrt: 3.0ms (6.6% of total)
ival-atan: 3.0ms (6.6% of total)
ival-add: 2.0ms (4.4% of total)
ival-pi: 1.0ms (2.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch31.0ms (0.4%)

Memory
5.3MiB live, 51.5MiB allocated; 3ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
26.0ms
1.6600048846331272e+118
1.7472019994447683e+121
1.0ms
-1.2405985978613662e+88
-2.5990594470951826e+81
Samples
12.0ms108×0valid
6.0ms17×2valid
1.0ms1valid
Compiler

Compiled 1 158 to 904 computations (21.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-pow2: 3.0ms (20.9% of total)
ival-sub: 2.0ms (14% of total)
ival-div: 2.0ms (14% of total)
adjust: 2.0ms (14% of total)
ival-mult: 2.0ms (14% of total)
ival-sqrt: 1.0ms (7% of total)
ival-add: 1.0ms (7% of total)
ival-atan: 1.0ms (7% of total)
ival-assert: 0.0ms (0% of total)
ival-pi: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
2.5MiB live, 2.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
44.99999999988471
0.0ms
-44.99999398665356
-0.0
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
44.99999999988471
0.0ms
-44.99999398665356
-0.0
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
44.99999999988471
0.0ms
-44.99999398665356
-0.0
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
44.99999999988471
0.0ms
-44.99999398665356
-0.0
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch1.0ms (0%)

Memory
2.3MiB live, 2.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
0.9999999999959753
0.0ms
-0.999999790094633
-0.0
0.0ms
-2.0619037295365392e+40
-6.961534585850488e+34
0.0ms
-inf
-3.6664140635362354e+269
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
0.9999999999959753
0.0ms
-0.999999790094633
-0.0
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
44.99999999988471
0.0ms
-44.99999398665356
-0.0
Compiler

Compiled 26 to 25 computations (3.8% saved)

bsearch78.0ms (1%)

Memory
1.7MiB live, 97.4MiB allocated; 13ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
1.7268334032421908e-75
9.104338546555988e-71
40.0ms
-2.1042856322984945e-168
-5.350489801282693e-191
Samples
27.0ms228×0valid
19.0ms53×2valid
12.0ms23×1valid
Compiler

Compiled 1 540 to 1 166 computations (24.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 47.0ms
ival-mult: 11.0ms (23.3% of total)
ival-sub: 7.0ms (14.9% of total)
adjust: 7.0ms (14.9% of total)
ival-pow2: 7.0ms (14.9% of total)
ival-div: 6.0ms (12.7% of total)
ival-sqrt: 3.0ms (6.4% of total)
ival-atan: 3.0ms (6.4% of total)
ival-add: 2.0ms (4.2% of total)
ival-pi: 1.0ms (2.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch103.0ms (1.3%)

Memory
-37.2MiB live, 154.0MiB allocated; 12ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
27.0ms
5.882851222977568e-23
2.4014012291700996e-21
23.0ms
4.1239480664306386e-238
1.6282282097607566e-237
42.0ms
-2.651941663509045e-224
-4.4485247384626627e-240
Samples
45.0ms119×2valid
24.0ms211×0valid
5.0ms22×1valid
Compiler

Compiled 1 522 to 1 212 computations (20.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 61.0ms
adjust: 13.0ms (21.3% of total)
ival-pow2: 10.0ms (16.4% of total)
ival-div: 8.0ms (13.1% of total)
ival-sub: 7.0ms (11.4% of total)
ival-sqrt: 7.0ms (11.4% of total)
ival-mult: 7.0ms (11.4% of total)
ival-add: 4.0ms (6.5% of total)
ival-atan: 3.0ms (4.9% of total)
ival-pi: 1.0ms (1.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch89.0ms (1.1%)

Memory
-4.0MiB live, 138.5MiB allocated; 21ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
44.0ms
2.0999430582728053e-107
8.145818591085446e-90
34.0ms
-2.565857762438333e-92
-2.855774679395981e-94
Samples
43.0ms96×2valid
16.0ms150×0valid
6.0ms26×1valid
Compiler

Compiled 876 to 772 computations (11.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 55.0ms
adjust: 16.0ms (28.9% of total)
ival-pow2: 11.0ms (19.9% of total)
ival-sub: 6.0ms (10.8% of total)
ival-div: 6.0ms (10.8% of total)
ival-mult: 6.0ms (10.8% of total)
ival-sqrt: 4.0ms (7.2% of total)
ival-atan: 3.0ms (5.4% of total)
ival-add: 2.0ms (3.6% of total)
ival-pi: 1.0ms (1.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch77.0ms (1%)

Memory
10.2MiB live, 55.7MiB allocated; 4ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
72.0ms
-9.315685129578328e-303
3.6361046069262467e-308
Samples
58.0ms74×2valid
7.0ms68×0valid
1.0ms1valid
Compiler

Compiled 476 to 420 computations (11.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.0ms
adjust: 7.0ms (25.3% of total)
ival-sub: 4.0ms (14.4% of total)
ival-div: 4.0ms (14.4% of total)
ival-pow2: 4.0ms (14.4% of total)
ival-mult: 3.0ms (10.8% of total)
ival-sqrt: 2.0ms (7.2% of total)
ival-atan: 2.0ms (7.2% of total)
ival-add: 1.0ms (3.6% of total)
ival-assert: 0.0ms (0% of total)
ival-pi: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

simplify61.0ms (0.8%)

Memory
13.7MiB live, 59.7MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02011830
12551744
23621744
35531744
412541744
559471744
Stop Event
node limit
Calls
Call 1
Inputs
(if (<=.f64 A #s(literal -380000000000000019794516027911989563352800301334933918206284354225944888438142533632 binary64)) (/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64)) (if (<=.f64 A #s(literal 2438866054934369/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))))
(if (<=.f64 A #s(literal -380000000000000019794516027911989563352800301334933918206284354225944888438142533632 binary64)) (/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64)) (if (<=.f64 A #s(literal 11499999999999999340008895496894905162162341849174296559813520117001172067417522957797039235104011544051446156433819697152 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -inf.0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -20000000000000000607572056854007333781504 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -1/2 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))))
(if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -1/2 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))))
(if (<=.f64 C #s(literal -2673305049388005/556938551955834377275533643273961343370755433013740225900780336657626363184653001282460059975265063449541297555370411048668054775558525146271076821255153099151854818647493280039413353545728 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 C #s(literal 3023725277371503/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))))
(if (<=.f64 B #s(literal -6451772274754039/14663118806259180136662417374041517307249530456151374095074022247583264770740686929584785544102209728219832068720127856678091192707621568870627853333281064765702591645685356596360602245877237133437460484214653566707676443446649642811063698998514839191552 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64))) (if (<=.f64 B #s(literal 2199467820938877/1832889850782397517082802171755189663406191307018921761884252780947908096342585866198098193012776216027479008590015982084761399088452696108828481666660133095712823955710669574545075280734654641679682560526831695838459555430831205351382962374814354898944 binary64)) (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64)) (if (<=.f64 B #s(literal 5104235503814077/85070591730234615865843651857942052864 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))))))
(if (<=.f64 B #s(literal -352281387416075/1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))) (if (<=.f64 B #s(literal 1038920085256495/19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392 binary64)) (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))))
(if (<=.f64 B #s(literal -101201126653655/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))
Outputs
(if (<=.f64 A #s(literal -380000000000000019794516027911989563352800301334933918206284354225944888438142533632 binary64)) (/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64)) (if (<=.f64 A #s(literal 2438866054934369/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (+.f64 (hypot.f64 B A) A) (neg.f64 B)))) (PI.f64)))))
(if (<=.f64 A #s(literal -380000000000000019794516027911989563352800301334933918206284354225944888438142533632 binary64)) (/.f64 (*.f64 #s(literal 180 binary64) (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 #s(literal 1/2 binary64) (/.f64 B A))))) (PI.f64)) (if (<=.f64 A #s(literal 11499999999999999340008895496894905162162341849174296559813520117001172067417522957797039235104011544051446156433819697152 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (-.f64 C (hypot.f64 B C)) B))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) #s(approx (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2)))) (*.f64 (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)) B)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 C (/.f64 B A) B)) A))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (/.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 B (/.f64 C A) B)) A))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (-.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))
(if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -inf.0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -20000000000000000607572056854007333781504 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -1/2 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 (/.f64 (-.f64 C A) B) #s(literal 1 binary64)))) (PI.f64)))))))
(if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal -1/2 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64)))))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (*.f64 (/.f64 B A) #s(literal 1/2 binary64)))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))))
(if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal -40 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 (/.f64 (neg.f64 A) B) #s(literal 1 binary64))))) (PI.f64))) (if (<=.f64 (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 (*.f64 (/.f64 #s(literal 1 binary64) B) (-.f64 (-.f64 C A) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) #s(literal 2 binary64)) (pow.f64 B #s(literal 2 binary64))))))) (PI.f64))) #s(literal 0 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64)))))
(if (<=.f64 C #s(literal -2673305049388005/556938551955834377275533643273961343370755433013740225900780336657626363184653001282460059975265063449541297555370411048668054775558525146271076821255153099151854818647493280039413353545728 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) (+.f64 #s(approx (/ (- C A) B) (/.f64 C B)) #s(literal 1 binary64)))) (PI.f64))) (if (<=.f64 C #s(literal 3023725277371503/3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (+ (* (/ B C) -1/2) (/ 0 B)) (*.f64 (/.f64 B C) #s(literal -1/2 binary64))))) (PI.f64)))))
(if (<=.f64 B #s(literal -6451772274754039/14663118806259180136662417374041517307249530456151374095074022247583264770740686929584785544102209728219832068720127856678091192707621568870627853333281064765702591645685356596360602245877237133437460484214653566707676443446649642811063698998514839191552 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64))) (if (<=.f64 B #s(literal 2199467820938877/1832889850782397517082802171755189663406191307018921761884252780947908096342585866198098193012776216027479008590015982084761399088452696108828481666660133095712823955710669574545075280734654641679682560526831695838459555430831205351382962374814354898944 binary64)) (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64)) (if (<=.f64 B #s(literal 5104235503814077/85070591730234615865843651857942052864 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(approx (/ (+ (sqrt (+ (* B B) (* A A))) A) (neg B)) (-.f64 #s(literal 1 binary64) (/.f64 A B))))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))))))
(if (<=.f64 B #s(literal -352281387416075/1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))) (if (<=.f64 B #s(literal 1038920085256495/19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392 binary64)) (/.f64 (*.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 0 binary64))) #s(literal 180 binary64)) (PI.f64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))))
(if (<=.f64 B #s(literal -101201126653655/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal 1 binary64))) (PI.f64))) (*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64))))
(*.f64 #s(literal 180 binary64) (/.f64 (atan.f64 #s(approx (* (/ 1 B) (- (- C A) (sqrt (+ (pow (- A C) 2) (pow B 2))))) #s(literal -1 binary64))) (PI.f64)))

derivations614.0ms (8%)

Memory
-6.8MiB live, 563.1MiB allocated; 68ms collecting garbage
Stop Event
fuel
Compiler

Compiled 1 834 to 205 computations (88.8% saved)

preprocess115.0ms (1.5%)

Memory
-5.8MiB live, 136.3MiB allocated; 18ms collecting garbage
Compiler

Compiled 3 714 to 448 computations (87.9% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...