Details

Time bar (total: 15.8s)

analyze3.3s (20.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
0%0%100%2
0%0%100%3
0%0%100%4
0%0%100%5
0%0%100%6
0%0%100%7
0%0%100%8
0%0%100%9
0%0%100%10
0%0%100%11
0%0%100%12
0%0%100%13
0%0%100%14
Compiler

Compiled 123 to 87 computations (29.3% saved)

sample6.6s (41.8%)

Results
6.5s8256×body128valid
Compiler

Compiled 338 to 238 computations (29.6% saved)

simplify57.0ms (0.4%)

Algorithm
egg-herbie
Rules
801×fma-def_binary32
676×div-sub_binary32
601×times-frac_binary32
366×associate-/l/_binary32
346×distribute-rgt-in_binary32
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
033138
166133
2117125
3212117
4404117
51310117
64092117
75339117

prune8.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.2b
(/.f32 1 (sqrt.f32 (+.f32 1 (/.f32 (/.f32 u0 (fma.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (/.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))) (*.f32 alphay alphay)))) (-.f32 1 u0)))))
Compiler

Compiled 319 to 215 computations (32.6% saved)

localize112.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (*.f32 alphax alphax))
0.4b
(*.f32 (PI.f32) (fma.f32 2 u1 1/2))
12.1b
(tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))
12.8b
(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))

series116.0ms (0.7%)

Counts
4 → 96
Calls

4 calls:

69.0ms
(/.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (*.f32 alphax alphax))
24.0ms
(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))
20.0ms
(tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))
2.0ms
(*.f32 (PI.f32) (fma.f32 2 u1 1/2))

rewrite153.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
307×expm1-udef_binary32
307×log1p-udef_binary32
171×add-sqr-sqrt_binary32
159×add-log-exp_binary32
159×log1p-expm1-u_binary32
Counts
4 → 99
Calls

4 calls:

150.0ms
(/.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (*.f32 alphax alphax))
150.0ms
(*.f32 (PI.f32) (fma.f32 2 u1 1/2))
150.0ms
(tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))
150.0ms
(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01668
133767
2417667
3527167
000
100

simplify75.0ms (0.5%)

Algorithm
egg-herbie
Rules
714×times-frac_binary32
580×associate-*r*_binary32
483×associate-*l*_binary32
462×associate-/l*_binary32
280×associate-/r*_binary32
Counts
195 → 114
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0722477
12102437
27752434
351122434

prune683.0ms (4.3%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New2961297
Fresh000
Picked101
Done000
Total2971298
Error
0.2b
Counts
298 → 1
Alt Table
StatusErrorProgram
0.2b
(/.f32 1 (sqrt.f32 (+.f32 1 (/.f32 (/.f32 u0 (fma.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))) (*.f32 alphay alphay)))) (-.f32 1 u0)))))
Compiler

Compiled 24761 to 15892 computations (35.8% saved)

localize117.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))
0.4b
(*.f32 (PI.f32) (fma.f32 2 u1 1/2))
12.1b
(tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))
12.8b
(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))

series367.0ms (2.3%)

Counts
1 → 36
Calls

1 calls:

366.0ms
(/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))

rewrite59.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
303×expm1-udef_binary32
303×log1p-udef_binary32
172×add-sqr-sqrt_binary32
163×log1p-expm1-u_binary32
163×expm1-log1p-u_binary32
Counts
1 → 34
Calls

1 calls:

58.0ms
(/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01726
135426
2408026
3505826
000
100

simplify86.0ms (0.5%)

Algorithm
egg-herbie
Rules
484×times-frac_binary32
398×associate-*r*_binary32
367×associate-*l*_binary32
315×associate-/l*_binary32
299×associate-/r*_binary32
Counts
70 → 75
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03135872
110584878
252764878

prune913.0ms (5.8%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New3101311
Fresh000
Picked101
Done000
Total3111312
Error
0.2b
Counts
312 → 1
Alt Table
StatusErrorProgram
0.2b
(/.f32 1 (sqrt.f32 (+.f32 1 (/.f32 (/.f32 u0 (fma.f32 (pow.f32 (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))) -1) (/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))) (*.f32 alphay alphay)))) (-.f32 1 u0)))))
Compiler

Compiled 30365 to 20693 computations (31.9% saved)

localize186.0ms (1.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))
0.3b
(/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))
0.4b
(*.f32 (PI.f32) (fma.f32 2 u1 1/2))
12.1b
(tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))

series127.0ms (0.8%)

Counts
1 → 36
Calls

1 calls:

127.0ms
(*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))

rewrite56.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
599×log-prod_binary32
227×expm1-udef_binary32
227×log1p-udef_binary32
198×log-pow_binary32
126×add-sqr-sqrt_binary32
Counts
1 → 37
Calls

1 calls:

55.0ms
(*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01217
124917
2298817
3516317
000
100

simplify71.0ms (0.4%)

Algorithm
egg-herbie
Rules
720×associate-*l*_binary32
712×associate-/r*_binary32
320×unswap-sqr_binary32
314×fma-def_binary32
307×associate-*r/_binary32
Counts
73 → 48
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0851476
12701476
211921430
348951430
454021430

prune1.3s (8.5%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New4790479
Fresh000
Picked011
Done000
Total4791480
Error
0.2b
Counts
480 → 1
Alt Table
StatusErrorProgram
0.2b
(/.f32 1 (sqrt.f32 (+.f32 1 (/.f32 (/.f32 u0 (fma.f32 (pow.f32 (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))) -1) (/.f32 (pow.f32 alphax -2) (hypot.f32 1 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2)))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (*.f32 (PI.f32) (fma.f32 2 u1 1/2))))))) (*.f32 alphay alphay)))) (-.f32 1 u0)))))
Compiler

Compiled 46379 to 31562 computations (31.9% saved)

regimes1.3s (8.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0.0b (0%)

Counts
46 → 1
Compiler

Compiled 46089 to 32301 computations (29.9% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary32
*-commutative_binary32
sub-neg_binary32
neg-sub0_binary32
neg-mul-1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032118
139118
242118
344118
445118
544118

end123.0ms (0.8%)

Compiler

Compiled 237 to 168 computations (29.1% saved)

Profiling

Loading profile data...