Date:Wednesday, June 15th, 2022
Commit:120a8734 on main
Hostname:warfa with Racket 8.1
Seed:2022166
Parameters:256 points for 4 iterations
Flags:
reduce:regimesreduce:avg-errorreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplify
default

Details

Time bar (total: 16.8min)

sample9.6min (56.8%)

Results
2.5min16299×body8192exit
1.8min69567×body1024valid
1.3min8988×body4096valid
48.6s257070×body128valid
46.8s14539×body2048valid
35.1s1630×body8192valid
28.4s34930×body512valid
24.6s12145×body1024invalid
14.5s37327×body256valid
12.3s44282×body128invalid
8.3s6600×body512invalid
7.9s917×body4096invalid
7.7s2391×body2048invalid
2.5s3344×body256invalid
603.0ms34×body8192invalid
Compiler

Compiled 3814 to 2659 computations (30.3% saved)

analyze2.5min (14.9%)

Algorithm
53×search
Search
TrueOtherFalseIter
0%79.4%20.6%0
1.9%77.5%20.6%1
4%75%21%2
10.7%66.2%23%3
16.3%58.5%25.3%4
20.4%53%26.6%5
23.9%48%28.1%6
25.6%45.2%29.2%7
27%43%30%8
29.4%39.5%31.1%9
30.4%38.1%31.5%10
32%36%31.9%11
33.5%34.1%32.4%12
34.5%32.7%32.8%13
35.4%31.6%33%14
Compiler

Compiled 1919 to 1338 computations (30.3% saved)

series1.8min (11%)

Counts
470 → 9908
Calls

2722 calls:

TimeVariablePointExpression
10.5s
angle
@0
(*.f64 (/.f64 (sqrt.f64 (*.f64 b (*.f64 (*.f64 a (/.f64 (*.f64 (*.f64 b (neg.f64 a)) 8) (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 a (*.f64 (neg.f64 a) (*.f64 b b)))))) (+.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 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 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 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 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 (/.f64 x-scale (-.f64 (*.f64 b b) (*.f64 a a)))) (/.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (/.f64 y-scale (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))))))))) (*.f64 a (*.f64 (*.f64 b b) (*.f64 a -4)))) (neg.f64 (pow.f64 (*.f64 x-scale y-scale) 2)))
8.6s
angle
@0
(/.f64 (sqrt.f64 (*.f64 b (*.f64 (*.f64 a (/.f64 (*.f64 (*.f64 b (neg.f64 a)) 8) (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 a (*.f64 (neg.f64 a) (*.f64 b b)))))) (+.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 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 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 b (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64)))) 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 (/.f64 x-scale (-.f64 (*.f64 b b) (*.f64 a a)))) (/.f64 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (/.f64 y-scale (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64)))))))))))) (*.f64 a (*.f64 (*.f64 b b) (*.f64 a -4))))
4.6s
angle
@0
(/.f64 (sqrt.f64 (*.f64 b (*.f64 (*.f64 a (*.f64 a (*.f64 (neg.f64 b) (/.f64 (*.f64 8 (*.f64 b a)) (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (neg.f64 a))))))) (+.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)) (*.f64 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)) (*.f64 y-scale y-scale)) (hypot.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)) (*.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 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) x-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) y-scale)))))))) (*.f64 (*.f64 a (neg.f64 a)) (*.f64 b b)))
4.3s
y-scale
@0
(/.f64 (sqrt.f64 (*.f64 b (*.f64 (*.f64 a (*.f64 a (*.f64 (neg.f64 b) (/.f64 (*.f64 8 (*.f64 b a)) (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (neg.f64 a))))))) (+.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)) (*.f64 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)) (*.f64 y-scale y-scale)) (hypot.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)) (*.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 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) x-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) y-scale)))))))) (*.f64 (*.f64 a (neg.f64 a)) (*.f64 b b)))
4.0s
a
@0
(/.f64 (sqrt.f64 (*.f64 b (*.f64 (*.f64 a (*.f64 a (*.f64 (neg.f64 b) (/.f64 (*.f64 8 (*.f64 b a)) (/.f64 (pow.f64 (*.f64 x-scale y-scale) 2) (*.f64 b (neg.f64 a))))))) (+.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)) (*.f64 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)) (*.f64 y-scale y-scale)) (hypot.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)) (*.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 (cos.f64 (*.f64 (/.f64 angle 180) (PI.f64))) x-scale) (/.f64 (*.f64 (sin.f64 (*.f64 (/.f64 angle 180) (PI.f64))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) y-scale)))))))) (*.f64 (*.f64 a (neg.f64 a)) (*.f64 b b)))

prune1.3min (7.6%)

Counts
30613 → 2298
Compiler

Compiled 2066412 to 1150469 computations (44.3% saved)

simplify32.5s (3.2%)

Algorithm
269×egg-herbie
Rules
67165×fma-def_binary64
66482×fma-neg_binary64
41826×associate-*l*_binary64
38940×cancel-sign-sub-inv_binary64
35479×times-frac_binary64
Stop Event
184×node limit
85×saturated
Counts
24433 → 20592

regimes31.7s (3.1%)

Counts
5097 → 74
Compiler

Compiled 184841 to 92046 computations (50.2% saved)

end16.0s (1.6%)

Stop Event
36×fuel
13×done
Compiler

Compiled 30491 to 20686 computations (32.2% saved)

rewrite9.0s (0.9%)

Algorithm
169×batch-egg-rewrite
egg-rewrite-iter-limit
egg-rewrite
Rules
53217×expm1-log1p-u_binary64
53205×log1p-expm1-u_binary64
43535×pow1_binary64
37145×add-log-exp_binary64
27895×add-exp-log_binary64
Stop Event
unsound
166×node limit
iter limit
Counts
470 → 14654

bsearch4.4s (0.4%)

Algorithm
18×binary-search
left-value
Calls

7 calls:

2.2s
y-scale
1.4s
b
748.0ms
C
75.0ms
x
0.0ms
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Compiler

Compiled 71 to 52 computations (26.8% saved)

localize3.1s (0.3%)

preprocess2.1s (0.2%)

Algorithm
102×egg-herbie
Rules
21168×fma-def_binary64
12225×fma-neg_binary64
8411×div-sub_binary64
7733×distribute-rgt-in_binary64
6807×associate-*l*_binary64
Stop Event
unsound
37×node limit
59×saturated
Compiler

Compiled 1622 to 1110 computations (31.6% saved)

Profiling

Loading profile data...