Details

Time bar (total: 10.0s)

analyze1.6s (16.2%)

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 57 to 41 computations (28.1% saved)

sample2.2s (22.4%)

Results
2.2s8256×body128valid
Compiler

Compiled 114 to 82 computations (28.1% saved)

preprocess51.0ms (0.5%)

Algorithm
egg-herbie
Rules
682×div-sub_binary32
604×sub-neg_binary32
450×fma-neg_binary32
303×fma-def_binary32
194×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
063286
1145275
2235275
3337275
4408275
5546275
6678275
71063275
81640275
92340275
103445275
055
Stop Event
saturated
node limit
Compiler

Compiled 22 to 15 computations (31.8% saved)

simplify20.0ms (0.2%)

Algorithm
egg-herbie
Rules
195×fma-neg_binary32
110×fma-def_binary32
65×cancel-sign-sub-inv_binary32
40×div-sub_binary32
39×sub-neg_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01626
13025
24225
35725
47025
59225
611725
716625
822425
927025
1032325
1141725
1258125
1391925
1499025
15103125
16103625
Stop Event
saturated
Counts
1 → 2

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.5b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
13.6b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
Compiler

Compiled 124 to 77 computations (37.9% saved)

localize46.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))
0.2b
(/.f32 sin2phi (*.f32 alphay alphay))
0.3b
(/.f32 cos2phi (*.f32 alphax alphax))
0.4b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))

series209.0ms (2.1%)

Counts
4 → 156
Calls

39 calls:

9.0ms
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))
sin2phi
-inf
9.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
alphay
inf
9.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
alphax
inf
8.0ms
(/.f32 cos2phi (*.f32 alphax alphax))
cos2phi
inf
8.0ms
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))
cos2phi
inf

rewrite45.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
177×add-sqr-sqrt_binary32
174×pow1_binary32
173×*-un-lft-identity_binary32
165×expm1-log1p-u_binary32
164×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01555
133647
01555
Stop Event
saturated
node limit
Counts
4 → 176

simplify78.0ms (0.8%)

Algorithm
egg-herbie
Rules
684×associate-/r*_binary32
598×associate-*r*_binary32
495×associate-*l*_binary32
222×fma-def_binary32
197×associate-*r/_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01224738
13724542
213984534
Stop Event
node limit
Counts
332 → 223

prune243.0ms (2.4%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New21310223
Fresh101
Picked101
Done000
Total21510225
Error
0.0b
Counts
225 → 10
Alt Table
StatusErrorProgram
7.7b
(*.f32 (/.f32 (sqrt.f32 (log1p.f32 u0)) 1) (/.f32 (sqrt.f32 (log1p.f32 u0)) (fma.f32 cos2phi (pow.f32 alphax -2) (*.f32 sin2phi (pow.f32 alphay -2)))))
2.2b
(fma.f32 1/2 (/.f32 u0 (/.f32 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))) u0)) (fma.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax)))) (/.f32 u0 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))))))
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
8.1b
(*.f32 (/.f32 (log1p.f32 (neg.f32 u0)) sin2phi) (neg.f32 (*.f32 alphay alphay)))
4.7b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 alphay (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (/.f32 sin2phi alphay))) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) alphay)))
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))
4.1b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 alphay alphay) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) sin2phi)) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (*.f32 alphay alphay))))
0.5b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
7.1b
(/.f32 u0 (+.f32 (/.f32 sin2phi (pow.f32 alphay 2)) (/.f32 cos2phi (pow.f32 alphax 2))))
29.7b
(-.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 sin2phi (pow.f32 alphax 4))) (*.f32 (pow.f32 cos2phi 2) (pow.f32 alphay 2))) (+.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 (pow.f32 sin2phi 2) (pow.f32 alphax 6))) (*.f32 (pow.f32 cos2phi 3) (pow.f32 alphay 4))) (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (pow.f32 alphax 2)) cos2phi)))
Compiler

Compiled 6394 to 2872 computations (55.1% saved)

localize41.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f32 alphax -2)
0.2b
(fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2)))
0.3b
(*.f32 cos2phi (pow.f32 alphax -2))
0.4b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))

series170.0ms (1.7%)

Counts
4 → 144
Calls

36 calls:

9.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
alphay
-inf
7.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
alphay
inf
7.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
alphax
0
7.0ms
(*.f32 cos2phi (pow.f32 alphax -2))
cos2phi
0
7.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
alphax
-inf

rewrite56.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
298×prod-diff_binary32
244×log1p-udef_binary32
158×add-sqr-sqrt_binary32
156×pow1_binary32
153×*-un-lft-identity_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01548
131544
2399244
01548
Stop Event
saturated
node limit
Counts
4 → 92

simplify76.0ms (0.8%)

Algorithm
egg-herbie
Rules
686×associate-/r*_binary32
597×associate-*r*_binary32
497×associate-*l*_binary32
229×fma-def_binary32
197×associate-*r/_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01234654
13734458
214014450
Stop Event
node limit
Counts
236 → 141

prune142.0ms (1.4%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1401141
Fresh189
Picked011
Done000
Total14110151
Error
0.0b
Counts
151 → 10
Alt Table
StatusErrorProgram
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
8.1b
(*.f32 (/.f32 (log1p.f32 (neg.f32 u0)) sin2phi) (neg.f32 (*.f32 alphay alphay)))
4.7b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 alphay (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (/.f32 sin2phi alphay))) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) alphay)))
2.2b
(fma.f32 1/2 (/.f32 u0 (/.f32 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))) u0)) (fma.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax)))) (/.f32 u0 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))))))
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))
4.1b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 alphay alphay) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) sin2phi)) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (*.f32 alphay alphay))))
0.5b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
7.1b
(/.f32 u0 (+.f32 (/.f32 sin2phi (pow.f32 alphay 2)) (/.f32 cos2phi (pow.f32 alphax 2))))
29.7b
(-.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 sin2phi (pow.f32 alphax 4))) (*.f32 (pow.f32 cos2phi 2) (pow.f32 alphay 2))) (+.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 (pow.f32 sin2phi 2) (pow.f32 alphax 6))) (*.f32 (pow.f32 cos2phi 3) (pow.f32 alphay 4))) (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (pow.f32 alphax 2)) cos2phi)))
7.7b
(*.f32 (/.f32 (sqrt.f32 (log1p.f32 u0)) 1) (/.f32 (sqrt.f32 (log1p.f32 u0)) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2)))))
Compiler

Compiled 4252 to 2345 computations (44.8% saved)

localize55.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 alphax (*.f32 alphay alphay))
0.3b
(/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay)))
0.3b
(*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay))
0.4b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))

series193.0ms (1.9%)

Counts
4 → 168
Calls

42 calls:

8.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))
alphax
0
8.0ms
(/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay)))
alphax
0
8.0ms
(/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay)))
sin2phi
-inf
8.0ms
(/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay)))
cos2phi
0
7.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))
alphay
0

rewrite43.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
197×add-sqr-sqrt_binary32
194×pow1_binary32
193×*-un-lft-identity_binary32
183×expm1-log1p-u_binary32
182×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01772
137968
01776
Stop Event
saturated
node limit
Counts
4 → 117

simplify87.0ms (0.9%)

Algorithm
egg-herbie
Rules
794×associate-/r*_binary32
395×fma-def_binary32
267×associate-*l/_binary32
234×associate-/r/_binary32
167×unswap-sqr_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01365129
14454919
218154785
Stop Event
node limit
Counts
285 → 168

prune168.0ms (1.7%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New1662168
Fresh178
Picked011
Done011
Total16711178
Error
0.0b
Counts
178 → 11
Alt Table
StatusErrorProgram
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
8.1b
(*.f32 (/.f32 (log1p.f32 (neg.f32 u0)) sin2phi) (neg.f32 (*.f32 alphay alphay)))
1.6b
(+.f32 (*.f32 1/2 (/.f32 (*.f32 (pow.f32 u0 2) (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax)))) (+.f32 (*.f32 1/4 (/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax)))) (+.f32 (*.f32 1/3 (/.f32 (*.f32 (pow.f32 u0 3) (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax)))) (/.f32 (*.f32 u0 (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax))))))
4.7b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 alphay (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (/.f32 sin2phi alphay))) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) alphay)))
2.2b
(fma.f32 1/2 (/.f32 u0 (/.f32 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))) u0)) (fma.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax)))) (/.f32 u0 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))))))
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))
4.1b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 alphay alphay) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) sin2phi)) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (*.f32 alphay alphay))))
0.5b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
29.7b
(-.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 sin2phi (pow.f32 alphax 4))) (*.f32 (pow.f32 cos2phi 2) (pow.f32 alphay 2))) (+.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 (pow.f32 sin2phi 2) (pow.f32 alphax 6))) (*.f32 (pow.f32 cos2phi 3) (pow.f32 alphay 4))) (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (pow.f32 alphax 2)) cos2phi)))
7.7b
(*.f32 (/.f32 (sqrt.f32 (log1p.f32 u0)) 1) (/.f32 (sqrt.f32 (log1p.f32 u0)) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2)))))
2.2b
(fma.f32 1/2 (/.f32 u0 (/.f32 (fma.f32 alphax sin2phi (*.f32 (/.f32 (*.f32 alphay alphay) alphax) cos2phi)) (*.f32 u0 (*.f32 alphay (*.f32 alphay alphax))))) (fma.f32 1/3 (*.f32 (/.f32 (*.f32 alphay (*.f32 alphay alphax)) (fma.f32 alphax sin2phi (*.f32 (/.f32 (*.f32 alphay alphay) alphax) cos2phi))) (pow.f32 u0 3)) (*.f32 (/.f32 (*.f32 alphay (*.f32 alphay alphax)) (fma.f32 alphax sin2phi (*.f32 (/.f32 (*.f32 alphay alphay) alphax) cos2phi))) u0)))
Compiler

Compiled 6062 to 1979 computations (67.4% saved)

localize51.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f32 sin2phi (*.f32 alphay alphay))
0.3b
(*.f32 cos2phi (pow.f32 alphax -2))
0.4b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
0.8b
(pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3)

series133.0ms (1.3%)

Counts
2 → 60
Calls

21 calls:

19.0ms
(pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3)
cos2phi
-inf
8.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
cos2phi
-inf
8.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
alphay
inf
7.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
alphax
0
7.0ms
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
alphay
-inf

rewrite31.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
198×add-sqr-sqrt_binary32
192×pow1_binary32
189×*-un-lft-identity_binary32
187×expm1-log1p-u_binary32
186×add-log-exp_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01932
141726
01942
Stop Event
saturated
node limit
Counts
2 → 73

simplify65.0ms (0.6%)

Algorithm
egg-herbie
Rules
682×associate-/r*_binary32
599×associate-*r*_binary32
492×associate-*l*_binary32
229×fma-def_binary32
197×associate-*r/_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01213742
13723546
214043538
Stop Event
node limit
Counts
133 → 113

prune182.0ms (1.8%)

Pruning

11 alts after pruning (8 fresh and 3 done)

PrunedKeptTotal
New1640164
Fresh088
Picked011
Done022
Total16411175
Error
0.0b
Counts
175 → 11
Alt Table
StatusErrorProgram
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (+.f32 (pow.f32 (cbrt.f32 (*.f32 cos2phi (pow.f32 alphax -2))) 3) (/.f32 sin2phi (*.f32 alphay alphay))))
8.1b
(*.f32 (/.f32 (log1p.f32 (neg.f32 u0)) sin2phi) (neg.f32 (*.f32 alphay alphay)))
1.6b
(+.f32 (*.f32 1/2 (/.f32 (*.f32 (pow.f32 u0 2) (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax)))) (+.f32 (*.f32 1/4 (/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax)))) (+.f32 (*.f32 1/3 (/.f32 (*.f32 (pow.f32 u0 3) (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax)))) (/.f32 (*.f32 u0 (*.f32 (pow.f32 alphay 2) alphax)) (+.f32 (*.f32 sin2phi alphax) (/.f32 (*.f32 cos2phi (pow.f32 alphay 2)) alphax))))))
4.7b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 alphay (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (/.f32 sin2phi alphay))) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) alphay)))
2.2b
(fma.f32 1/2 (/.f32 u0 (/.f32 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))) u0)) (fma.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax)))) (/.f32 u0 (+.f32 (/.f32 sin2phi (*.f32 alphay alphay)) (/.f32 cos2phi (*.f32 alphax alphax))))))
0.6b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 (/.f32 cos2phi alphax) (*.f32 alphay alphay)) (*.f32 alphax sin2phi)) (*.f32 alphax (*.f32 alphay alphay))))
4.1b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (/.f32 (+.f32 (*.f32 alphay alphay) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) sin2phi)) (*.f32 (/.f32 (*.f32 alphax alphax) cos2phi) (*.f32 alphay alphay))))
0.5b
(/.f32 (neg.f32 (log1p.f32 (neg.f32 u0))) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2))))
29.7b
(-.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 sin2phi (pow.f32 alphax 4))) (*.f32 (pow.f32 cos2phi 2) (pow.f32 alphay 2))) (+.f32 (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (*.f32 (pow.f32 sin2phi 2) (pow.f32 alphax 6))) (*.f32 (pow.f32 cos2phi 3) (pow.f32 alphay 4))) (/.f32 (*.f32 (log.f32 (-.f32 1 u0)) (pow.f32 alphax 2)) cos2phi)))
7.7b
(*.f32 (/.f32 (sqrt.f32 (log1p.f32 u0)) 1) (/.f32 (sqrt.f32 (log1p.f32 u0)) (fma.f32 sin2phi (pow.f32 alphay -2) (*.f32 cos2phi (pow.f32 alphax -2)))))
2.2b
(fma.f32 1/2 (/.f32 u0 (/.f32 (fma.f32 alphax sin2phi (*.f32 (/.f32 (*.f32 alphay alphay) alphax) cos2phi)) (*.f32 u0 (*.f32 alphay (*.f32 alphay alphax))))) (fma.f32 1/3 (*.f32 (/.f32 (*.f32 alphay (*.f32 alphay alphax)) (fma.f32 alphax sin2phi (*.f32 (/.f32 (*.f32 alphay alphay) alphax) cos2phi))) (pow.f32 u0 3)) (*.f32 (/.f32 (*.f32 alphay (*.f32 alphay alphax)) (fma.f32 alphax sin2phi (*.f32 (/.f32 (*.f32 alphay alphay) alphax) cos2phi))) u0)))
Compiler

Compiled 4919 to 2442 computations (50.4% saved)

regimes3.7s (37.5%)

Accuracy

Total 0.5b remaining (91.8%)

Threshold costs 0.5b (91.8%)

Counts
239 → 1
Compiler

Compiled 98900 to 65893 computations (33.4% saved)

simplify2.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
01625
12525
23125
33525
43625
Stop Event
saturated

end187.0ms (1.9%)

Stop Event
fuel
Compiler

Compiled 483 to 287 computations (40.6% saved)

Profiling

Loading profile data...