Details

Time bar (total: 2.5min)

analyze22.0s (14.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
2.3%97.4%0.2%9
3.5%96.2%0.2%10
5.3%94.5%0.2%11
6.1%93.6%0.2%12
9.2%90.6%0.2%13
13.8%85.9%0.2%14
Compiler

Compiled 175 to 127 computations (27.4% saved)

sample52.7s (35.1%)

Results
19.1s1669×body4096valid
10.9s1445×body2048valid
10.4s1689×body1024valid
6.1s82×body8192exit
3.0s727×body512valid
2.4s2383×body128valid
869.0ms343×body256valid
Compiler

Compiled 350 to 254 computations (27.4% saved)

preprocess74.0ms (0%)

Algorithm
egg-herbie
Rules
977×times-frac_binary64
444×fma-def_binary64
165×div-sub_binary64
138×*-commutative_binary64
118×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03253003
18702915
228452915
055
Stop Event
saturated
node limit
Compiler

Compiled 174 to 126 computations (27.6% saved)

simplify22.0ms (0%)

Algorithm
egg-herbie
Rules
637×times-frac_binary64
293×associate-/l/_binary64
243×div-sub_binary64
198×fma-def_binary64
174×distribute-rgt-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
046273
1115265
2345265
31608265
Stop Event
node limit
Counts
1 → 2

prune19.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
51.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
51.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
53.9b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2)))) (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale))) (PI.f64)))
Compiler

Compiled 1024 to 708 computations (30.9% saved)

localize49.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
14.7b
(/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale))
24.2b
(-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))))))
25.1b
(cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))
25.5b
(sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))

series52.1s (34.7%)

Counts
4 → 144
Calls

36 calls:

8.3s
(/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale))
angle
0
3.4s
(/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale))
b
0
3.0s
(/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale))
a
0
2.9s
(-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))))))
angle
0
2.7s
(/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale))
b
inf

rewrite73.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
534×pow1_binary64
501×add-log-exp_binary64
501×log1p-expm1-u_binary64
501×expm1-log1p-u_binary64
497×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044484
11042484
Stop Event
node limit
Counts
4 → 42

simplify4.1s (2.7%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010887673290
Stop Event
node limit
Counts
186 → 139

prune9.5s (6.4%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New26514279
Fresh011
Picked101
Done000
Total26615281
Error
37.0b
Counts
281 → 15
Alt Table
StatusErrorProgram
53.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) a) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) b) 2)) (*.f64 y-scale y-scale)) (/.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) (/.f64 y-scale (*.f64 (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))))) (/.f64 (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) a) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) a) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) a) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) b) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) (/.f64 (/.f64 x-scale (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a))))))) (/.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) (/.f64 y-scale (*.f64 (cos.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))))))) (PI.f64)))
56.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 x-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 y-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))) (PI.f64)))
50.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4))))))) (pow.f64 x-scale 2))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
51.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (-.f64 1 (*.f64 1/64800 (*.f64 (pow.f64 angle 2) (pow.f64 (PI.f64) 2)))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
49.2b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))))) (PI.f64)))
57.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (+.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (pow.f64 x-scale 4)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)))) (pow.f64 x-scale 4))) (/.f64 (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (pow.f64 x-scale 4))))) (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (pow.f64 x-scale 2)) (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (pow.f64 x-scale 2))))) (-.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 b 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 a 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))))) (PI.f64)))
61.1b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (-.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 b 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (-.f64 (pow.f64 b 2) (pow.f64 a 2)))))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 3) (*.f64 y-scale (*.f64 (pow.f64 a 2) (pow.f64 b 2)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)))))) (/.f64 (*.f64 y-scale (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 3)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (pow.f64 b 2) (pow.f64 a 2))))))) (+.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))) (*.f64 (pow.f64 x-scale 2) (-.f64 (pow.f64 b 2) (pow.f64 a 2)))) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)))))))) (*.f64 1/2 (/.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (pow.f64 a 2)) (*.f64 y-scale (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (pow.f64 b 2))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4))))) (/.f64 1 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 y-scale (*.f64 (pow.f64 a 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))) (*.f64 (pow.f64 x-scale 2) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (pow.f64 b 2) (pow.f64 a 2)))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (*.f64 (pow.f64 a 4) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))) (*.f64 (pow.f64 x-scale 2) (-.f64 (pow.f64 b 2) (pow.f64 a 2)))) (sqrt.f64 (/.f64 1 (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)))))))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)))))) (/.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (*.f64 (pow.f64 b 4) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))) (*.f64 (pow.f64 x-scale 2) (-.f64 (pow.f64 b 2) (pow.f64 a 2))))))))))))) (PI.f64)))
61.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 1/2 (/.f64 (-.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 a 2)) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 b 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 y-scale (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))))) (PI.f64)))
53.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 x-scale 4)) (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 y-scale 4)) (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))) (PI.f64)))
61.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 a 2)) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)) (pow.f64 y-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2)))) (/.f64 (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (pow.f64 x-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 a 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))))) (PI.f64)))
53.9b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2)))) (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale))) (PI.f64)))
51.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (*.f64 (*.f64 (cbrt.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64)))) (cbrt.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64))))) (cbrt.f64 (sin.f64 (*.f64 (*.f64 angle 1/180) (PI.f64)))))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
57.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (*.f64 -1 (+.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (pow.f64 x-scale 4)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)))) (pow.f64 x-scale 4))) (/.f64 (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (pow.f64 x-scale 4))))) (+.f64 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (pow.f64 x-scale 2)) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (pow.f64 x-scale 2))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
57.6b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 x-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2)))) (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 y-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 x-scale 2)))) (pow.f64 b 2)) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
62.1b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 a 2)) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)) (pow.f64 y-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))) (/.f64 (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (pow.f64 x-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (pow.f64 x-scale 2)))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
Compiler

Compiled 377742 to 267914 computations (29.1% saved)

localize46.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
16.0b
(*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))
22.5b
(/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))
25.4b
(cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))
25.5b
(sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))

series1.3s (0.9%)

Counts
4 → 84
Calls

33 calls:

149.0ms
(/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))
y-scale
-inf
143.0ms
(/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))
angle
0
131.0ms
(/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))
y-scale
inf
120.0ms
(/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))
x-scale
inf
115.0ms
(/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))
x-scale
-inf

rewrite51.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
472×pow1_binary64
441×add-log-exp_binary64
441×log1p-expm1-u_binary64
441×expm1-log1p-u_binary64
432×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042205
1955205
Stop Event
node limit
Counts
4 → 35

simplify141.0ms (0.1%)

Algorithm
egg-herbie
Rules
842×times-frac_binary64
447×associate-/l*_binary64
407×fma-def_binary64
314×*-commutative_binary64
184×associate-*r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
056213024
1199711574
Stop Event
node limit
Counts
119 → 91

prune1.1s (0.7%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New1837190
Fresh8614
Picked101
Done000
Total19213205
Error
19.3b
Counts
205 → 13
Alt Table
StatusErrorProgram
53.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 x-scale 4)) (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 y-scale 4)) (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))) (PI.f64)))
50.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 1 (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))))) (PI.f64)))
38.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 -2 (/.f64 (*.f64 y-scale (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (pow.f64 x-scale 2))))))) (PI.f64)))
53.9b
(*.f64 180 (/.f64 (atan.f64 (/.f64 (-.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) x-scale) x-scale) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) y-scale) y-scale)) 2) (pow.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale) 2)))) (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) x-scale) y-scale))) (PI.f64)))
56.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 x-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 y-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))) (PI.f64)))
37.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
62.1b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 a 2)) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)) (pow.f64 y-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))) (/.f64 (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (pow.f64 x-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (pow.f64 x-scale 2)))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
47.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 (*.f64 (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4)))))))) (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4))))))))) (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4)))))))))))) (PI.f64)))
57.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (-.f64 (+.f64 (*.f64 1/4374000 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 b 4))))) (pow.f64 (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))) 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 y-scale (pow.f64 b 2)) (*.f64 angle (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2)))))))) (*.f64 1/16200 (/.f64 (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 a 2)))) (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))))))) (+.f64 (*.f64 1/16200 (/.f64 (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 b 2)))) (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))))) (*.f64 1/4374000 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 b 2)))))) (pow.f64 (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))) 2)))))))) (PI.f64)))
61.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 a 2)) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 a 4)) (pow.f64 y-scale 4)) (+.f64 (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2)))) (/.f64 (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)) (pow.f64 x-scale 4)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2))))) (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 (pow.f64 a 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))))) (PI.f64)))
38.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 -2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
38.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (/.f64 (*.f64 y-scale (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) (*.f64 (pow.f64 x-scale 2) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))))) (PI.f64)))
51.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (/.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale)) (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) b) 2)) (*.f64 x-scale x-scale)) (hypot.f64 (-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 (-.f64 1 (*.f64 1/64800 (*.f64 (pow.f64 angle 2) (pow.f64 (PI.f64) 2)))) b) 2)) (*.f64 x-scale x-scale)) (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 2)) (*.f64 y-scale y-scale))) (*.f64 (/.f64 2 y-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (-.f64 (*.f64 b b) (*.f64 a a))) (/.f64 x-scale (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))))))))) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) y-scale)))) (PI.f64)))
Compiler

Compiled 31260 to 21007 computations (32.8% saved)

localize18.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
7.3b
(/.f64 y-scale (*.f64 x-scale x-scale))
14.4b
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
25.1b
(cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))
25.5b
(sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))

series115.0ms (0.1%)

Counts
4 → 84
Calls

21 calls:

12.0ms
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
y-scale
0
11.0ms
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
x-scale
0
11.0ms
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
y-scale
inf
11.0ms
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
y-scale
-inf
10.0ms
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
x-scale
inf

rewrite35.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
203×add-sqr-sqrt_binary64
200×associate-*r*_binary64
196×*-un-lft-identity_binary64
196×pow1_binary64
188×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01964
140649
Stop Event
node limit
Counts
4 → 82

simplify59.0ms (0%)

Algorithm
egg-herbie
Rules
852×fma-neg_binary64
619×associate-*r*_binary64
507×associate-*l*_binary64
231×fma-def_binary64
189×*-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0901668
12731658
29211652
348721652
Stop Event
node limit
Counts
166 → 114

prune274.0ms (0.2%)

Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New9915114
Fresh7512
Picked101
Done000
Total10720127
Error
15.7b
Counts
127 → 20
Alt Table
StatusErrorProgram
57.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (-.f64 (+.f64 (*.f64 1/4374000 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 b 4))))) (pow.f64 (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))) 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 y-scale (pow.f64 b 2)) (*.f64 angle (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2)))))))) (*.f64 1/16200 (/.f64 (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 a 2)))) (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))))))) (+.f64 (*.f64 1/16200 (/.f64 (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 b 2)))) (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))))) (*.f64 1/4374000 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 b 2)))))) (pow.f64 (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))) 2)))))))) (PI.f64)))
40.7b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (pow.f64 (pow.f64 (*.f64 y-scale (pow.f64 x-scale -2)) 3) 1/3) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
40.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) (cbrt.f64 (pow.f64 x-scale 4))) (cbrt.f64 (*.f64 y-scale (pow.f64 x-scale -2)))) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
42.8b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) 2)))))))) (PI.f64)))
53.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 1/2 (/.f64 (*.f64 y-scale (-.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 y-scale 2)) (+.f64 (sqrt.f64 (-.f64 (+.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 x-scale 4)) (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 y-scale 4)) (*.f64 3 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 x-scale 2) (pow.f64 y-scale 2)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (*.f64 (pow.f64 y-scale 2) (pow.f64 x-scale 2))))) (/.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 x-scale 2))))) (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))) (PI.f64)))
50.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 1 (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))))) (PI.f64)))
36.1b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
38.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 -2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
40.2b
(*.f64 180 (/.f64 (atan.f64 (-.f64 (*.f64 1/540 (/.f64 (*.f64 y-scale (*.f64 angle (PI.f64))) x-scale)) (*.f64 180 (/.f64 y-scale (*.f64 x-scale (*.f64 angle (PI.f64))))))) (PI.f64)))
50.9b
(*.f64 180 (/.f64 (atan.f64 (log.f64 (pow.f64 (exp.f64 x-scale) (/.f64 (*.f64 y-scale (pow.f64 x-scale -2)) (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))) (PI.f64)))
37.5b
(*.f64 180 (/.f64 (atan.f64 (*.f64 -1 (/.f64 (*.f64 y-scale (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) (*.f64 x-scale (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))) (PI.f64)))
47.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 (*.f64 (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4)))))))) (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4))))))))) (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4)))))))))))) (PI.f64)))
38.5b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 1 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
37.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y-scale (pow.f64 x-scale -2))) 3) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
40.1b
(*.f64 180 (/.f64 (atan.f64 (fma.f64 -180 (/.f64 y-scale (*.f64 (PI.f64) (*.f64 angle x-scale))) (*.f64 (/.f64 y-scale x-scale) (*.f64 (*.f64 1/540 angle) (PI.f64))))) (PI.f64)))
41.5b
(*.f64 180 (/.f64 (atan.f64 (log1p.f64 (expm1.f64 (*.f64 x-scale (/.f64 (*.f64 y-scale (pow.f64 x-scale -2)) (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))))) (PI.f64)))
37.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 (/.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) (/.f64 (neg.f64 y-scale) x-scale))) (PI.f64)))
37.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
58.4b
(*.f64 180 (/.f64 (atan.f64 (pow.f64 (*.f64 (sqrt.f64 x-scale) (/.f64 (sqrt.f64 (/.f64 y-scale (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))) x-scale)) 2)) (PI.f64)))
41.5b
(*.f64 180 (/.f64 (atan.f64 (pow.f64 (cbrt.f64 (*.f64 x-scale (/.f64 (*.f64 y-scale (pow.f64 x-scale -2)) (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))) 3)) (PI.f64)))
Compiler

Compiled 6362 to 4420 computations (30.5% saved)

localize23.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.0b
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))
14.4b
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
25.1b
(cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))
25.5b
(sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))

series320.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

73.0ms
(*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))
y-scale
-inf
70.0ms
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))
y-scale
-inf
18.0ms
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))
y-scale
inf
17.0ms
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))
y-scale
0
14.0ms
(*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))
angle
inf

rewrite34.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
232×add-sqr-sqrt_binary64
225×pow1_binary64
224×*-un-lft-identity_binary64
215×add-log-exp_binary64
215×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02268
147344
Stop Event
node limit
Counts
2 → 50

simplify65.0ms (0%)

Algorithm
egg-herbie
Rules
526×fma-neg_binary64
375×distribute-neg-frac_binary64
366×times-frac_binary64
315×associate-/l*_binary64
311×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0682310
12252302
27772300
340052298
Stop Event
node limit
Counts
122 → 72

prune287.0ms (0.2%)

Pruning

23 alts after pruning (23 fresh and 0 done)

PrunedKeptTotal
New11510125
Fresh61319
Picked101
Done000
Total12223145
Error
15.7b
Counts
145 → 23
Alt Table
StatusErrorProgram
57.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (-.f64 (+.f64 (*.f64 1/4374000 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 b 4))))) (pow.f64 (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))) 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 y-scale (pow.f64 b 2)) (*.f64 angle (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2)))))))) (*.f64 1/16200 (/.f64 (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 a 2)))) (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))))))) (+.f64 (*.f64 1/16200 (/.f64 (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 (PI.f64) 2) (pow.f64 b 2)))) (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))))) (*.f64 1/4374000 (/.f64 (*.f64 (pow.f64 x-scale 2) (*.f64 y-scale (*.f64 angle (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 b 2)))))) (pow.f64 (-.f64 (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 b 2)))) (*.f64 1/180 (*.f64 (pow.f64 x-scale 2) (*.f64 (PI.f64) (pow.f64 a 2))))) 2)))))))) (PI.f64)))
36.8b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (/.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (cbrt.f64 y-scale)) (*.f64 (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) x-scale)))))) (PI.f64)))
37.5b
(*.f64 180 (/.f64 (atan.f64 (*.f64 (/.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))) (neg.f64 y-scale))) (PI.f64)))
39.2b
(*.f64 180 (/.f64 (atan.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 x-scale (*.f64 -1 (/.f64 y-scale (*.f64 (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (*.f64 x-scale x-scale))))))))) (PI.f64)))
41.5b
(*.f64 180 (/.f64 (atan.f64 (log1p.f64 (expm1.f64 (*.f64 x-scale (/.f64 (*.f64 y-scale (pow.f64 x-scale -2)) (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))))) (PI.f64)))
37.5b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 1 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
38.7b
(*.f64 180 (/.f64 (atan.f64 (pow.f64 (cbrt.f64 (*.f64 x-scale (*.f64 -1 (/.f64 y-scale (*.f64 (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (*.f64 x-scale x-scale)))))) 3)) (PI.f64)))
50.9b
(*.f64 180 (/.f64 (atan.f64 (log.f64 (pow.f64 (exp.f64 x-scale) (/.f64 (*.f64 y-scale (pow.f64 x-scale -2)) (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))) (PI.f64)))
36.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))))))))) (PI.f64)))
40.6b
(*.f64 180 (/.f64 (atan.f64 (pow.f64 (pow.f64 (*.f64 x-scale (*.f64 -1 (/.f64 y-scale (*.f64 (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (*.f64 x-scale x-scale))))) 3) 1/3)) (PI.f64)))
37.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
41.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) 2)))))))) (PI.f64)))
58.4b
(*.f64 180 (/.f64 (atan.f64 (pow.f64 (*.f64 (sqrt.f64 x-scale) (/.f64 (sqrt.f64 (/.f64 y-scale (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))) x-scale)) 2)) (PI.f64)))
47.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 (*.f64 (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4)))))))) (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4))))))))) (cbrt.f64 (/.f64 y-scale (/.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (*.f64 x-scale x-scale)) (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 2)) (sqrt.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 a a)) (pow.f64 (*.f64 b (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) b) 4) (pow.f64 (*.f64 a (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) 4)))))))))))) (PI.f64)))
44.5b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) x-scale) (/.f64 (cbrt.f64 y-scale) x-scale)) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))))))))) (PI.f64)))
38.5b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 1 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
39.8b
(*.f64 180 (/.f64 (atan.f64 (fma.f64 -180 (/.f64 y-scale (*.f64 (PI.f64) (*.f64 angle x-scale))) (*.f64 (/.f64 (*.f64 y-scale 1/540) x-scale) (*.f64 angle (PI.f64))))) (PI.f64)))
40.9b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 y-scale) 2) (cbrt.f64 (pow.f64 x-scale 4))) (cbrt.f64 (*.f64 y-scale (pow.f64 x-scale -2)))) (/.f64 (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
50.4b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (/.f64 (*.f64 y-scale (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2)) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (pow.f64 b 2)) (sqrt.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2) (*.f64 (pow.f64 a 2) (*.f64 (pow.f64 b 2) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 2))))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4) (pow.f64 b 4)) (*.f64 (pow.f64 a 4) (pow.f64 (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) 4)))))))) (*.f64 1 (*.f64 (pow.f64 x-scale 2) (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 a 2)) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))))))))) (PI.f64)))
40.1b
(*.f64 180 (/.f64 (atan.f64 (fma.f64 -180 (/.f64 y-scale (*.f64 (PI.f64) (*.f64 angle x-scale))) (*.f64 (/.f64 y-scale x-scale) (*.f64 (*.f64 1/540 angle) (PI.f64))))) (PI.f64)))
38.3b
(*.f64 180 (/.f64 (atan.f64 (*.f64 x-scale (*.f64 -1/2 (*.f64 -2 (*.f64 (/.f64 y-scale (*.f64 x-scale x-scale)) (/.f64 (sin.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))) (cos.f64 (*.f64 (*.f64 1/180 angle) (PI.f64))))))))) (PI.f64)))
37.0b
(*.f64 180 (/.f64 (atan.f64 (*.f64 (/.f64 (cos.f64 (*.f64 1/180 (*.f64 angle (PI.f64)))) (sin.f64 (*.f64 1/180 (*.f64 angle (PI.f64))))) (/.f64 (neg.f64 y-scale) x-scale))) (PI.f64)))
41.5b
(*.f64 180 (/.f64 (atan.f64 (pow.f64 (cbrt.f64 (*.f64 x-scale (/.f64 (*.f64 y-scale (pow.f64 x-scale -2)) (tan.f64 (*.f64 (*.f64 1/180 angle) (PI.f64)))))) 3)) (PI.f64)))
Compiler

Compiled 5694 to 3818 computations (32.9% saved)

regimes5.5s (3.7%)

Compiler

Compiled 186879 to 129072 computations (30.9% saved)

Profiling

Loading profile data...