Details

Time bar (total: 27.2s)

analyze1.9s (7%)

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 42 to 30 computations (28.6% saved)

sample76.0ms (0.3%)

Algorithm
intervals
Results
29.0ms256×body128valid
11.0ms256×pre128true
Compiler

Compiled 69 to 50 computations (27.5% saved)

simplify27.0ms (0.1%)

Algorithm
egg-herbie
Rules
65×cancel-sign-sub-inv_binary32
42×sub-neg_binary32
41×div-sub_binary32
32×distribute-rgt-neg-in_binary32
29×distribute-rgt-in_binary32
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01626
13026
24126
35326
46226
57326
69326
712126
814326
916026
1019926
1121526
1230326
1329026
1431626
1531126
1631226
1727126

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
12.7b
Counts
1 → 1
Alt Table
StatusErrorProgram
12.7b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
Compiler

Compiled 44 to 30 computations (31.8% saved)

localize53.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(/.f32 cos2phi (*.f32 alphax alphax))
0.3b
(/.f32 sin2phi (*.f32 alphay alphay))
0.4b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
14.3b
(log.f32 (-.f32 1 u0))

rewrite234.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
8.8b
Rules
66×*-un-lft-identity_binary32
54×times-frac_binary32
40×add-sqr-sqrt_binary32
37×add-cube-cbrt_binary32
20×distribute-lft-neg-in_binary32
Counts
4 → 140
Calls

4 calls:

13.0ms
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
5.0ms
(/.f32 sin2phi (*.f32 alphay alphay))
4.0ms
(/.f32 cos2phi (*.f32 alphax alphax))
3.0ms
(log.f32 (-.f32 1 u0))
Compiler

Compiled 3127 to 1166 computations (62.7% saved)

series401.0ms (1.5%)

Error
0.4b
Counts
4 → 66
Calls

4 calls:

281.0ms
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
29.0ms
(/.f32 sin2phi (*.f32 alphay alphay))
27.0ms
(/.f32 cos2phi (*.f32 alphax alphax))
19.0ms
(log.f32 (-.f32 1 u0))
Compiler

Compiled 3875 to 2864 computations (26.1% saved)

simplify224.0ms (0.8%)

Algorithm
egg-herbie
Rules
466×neg-mul-1_binary32
368×div-sub_binary32
237×distribute-rgt-in_binary32
211×distribute-frac-neg_binary32
203×associate-/l*_binary32
Counts
206 → 131
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03267098
17526954
225816896
344916896
451466896

prune127.0ms (0.5%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New11912131
Fresh000
Picked101
Done000
Total12012132
Error
0.5b
Counts
132 → 12
Alt Table
StatusErrorProgram
12.7b
(*.f32 (*.f32 (/.f32 (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0)))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(*.f32 (/.f32 (*.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))))) (*.f32 (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
7.9b
(/.f32 u0 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
13.9b
(/.f32 (neg.f32 (+.f32 (*.f32 2 (log.f32 (cbrt.f32 (-.f32 1 u0)))) (log.f32 (cbrt.f32 (-.f32 1 u0))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
4.4b
(/.f32 (+.f32 u0 (*.f32 1/2 (*.f32 u0 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
12.6b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 1 (/.f32 alphay (/.f32 sin2phi alphay)))))
13.4b
(/.f32 (neg.f32 (-.f32 (log.f32 (-.f32 1 (pow.f32 u0 3))) (log.f32 (+.f32 1 (+.f32 u0 (*.f32 u0 u0)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.6b
(+.f32 (+.f32 (/.f32 (+.f32 u0 (*.f32 1/2 (*.f32 u0 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (*.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (*.f32 1/4 (/.f32 (pow.f32 u0 4) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
2.6b
(/.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
18.3b
(*.f32 (/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (-.f32 (/.f32 (*.f32 cos2phi cos2phi) (pow.f32 alphax 4)) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
12.7b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 (sqrt.f32 sin2phi) (/.f32 alphay (/.f32 (sqrt.f32 sin2phi) alphay)))))
12.7b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
Compiler

Compiled 2214 to 1098 computations (50.4% saved)

localize86.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.3b
(/.f32 sin2phi (*.f32 alphay alphay))
0.4b
(*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0)))
0.4b
(*.f32 1/3 u0)
0.4b
(/.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))

rewrite255.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
39×*-un-lft-identity_binary32
22×add-sqr-sqrt_binary32
19×times-frac_binary32
19×add-cube-cbrt_binary32
18×add-cbrt-cube_binary32
Counts
4 → 103
Calls

4 calls:

18.0ms
(/.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
9.0ms
(*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0)))
3.0ms
(/.f32 sin2phi (*.f32 alphay alphay))
3.0ms
(*.f32 1/3 u0)
Compiler

Compiled 3744 to 1729 computations (53.8% saved)

series1.1s (3.9%)

Error
0.2b
Counts
4 → 69
Calls

4 calls:

828.0ms
(/.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
33.0ms
(/.f32 sin2phi (*.f32 alphay alphay))
23.0ms
(*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0)))
16.0ms
(*.f32 1/3 u0)
Compiler

Compiled 12486 to 9275 computations (25.7% saved)

simplify318.0ms (1.2%)

Algorithm
egg-herbie
Rules
488×times-frac_binary32
412×associate-*l*_binary32
408×associate-/l*_binary32
253×associate-/r*_binary32
160×distribute-rgt-in_binary32
Counts
172 → 146
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
042415640
1129315343
2492815270
3496515270

prune301.0ms (1.1%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New13511146
Fresh3811
Picked101
Done000
Total13919158
Error
0.1b
Counts
158 → 19
Alt Table
StatusErrorProgram
11.0b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (-.f32 (*.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 cos2phi (*.f32 alphax alphax))) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
23.2b
(log.f32 (exp.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
13.9b
(/.f32 (neg.f32 (+.f32 (*.f32 2 (log.f32 (cbrt.f32 (-.f32 1 u0)))) (log.f32 (cbrt.f32 (-.f32 1 u0))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.6b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay)))
4.2b
(exp.f32 (log.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
2.7b
(/.f32 (-.f32 (*.f32 u0 u0) (*.f32 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4))) (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4))))) (*.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))) (+.f32 (-.f32 u0 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))) (*.f32 -1/4 (pow.f32 u0 4)))))
4.4b
(/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 1/2 (*.f32 u0 u0)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
12.7b
(*.f32 (*.f32 (/.f32 (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0)))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(*.f32 (/.f32 (*.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))))) (*.f32 (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
18.3b
(*.f32 (/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (-.f32 (/.f32 (*.f32 cos2phi cos2phi) (pow.f32 alphax 4)) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.9b
(*.f32 (*.f32 (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))))) (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))))) (/.f32 (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
3.0b
(/.f32 (sqrt.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4))))) (/.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))) (sqrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))))))
2.9b
(*.f32 (*.f32 (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.6b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 1 (/.f32 alphay (/.f32 sin2phi alphay)))))
13.4b
(/.f32 (neg.f32 (-.f32 (log.f32 (-.f32 1 (pow.f32 u0 3))) (log.f32 (+.f32 1 (+.f32 u0 (*.f32 u0 u0)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.8b
(*.f32 (/.f32 1 (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
2.6b
(+.f32 (+.f32 (*.f32 1/2 (/.f32 (*.f32 u0 u0) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (+.f32 (/.f32 u0 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (*.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))) (*.f32 1/4 (/.f32 (pow.f32 u0 4) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 (sqrt.f32 sin2phi) (/.f32 alphay (/.f32 (sqrt.f32 sin2phi) alphay)))))
12.7b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
Compiler

Compiled 6856 to 3540 computations (48.4% saved)

localize98.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.3b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay)))
0.4b
(*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))
0.4b
(*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay))
0.4b
(*.f32 u0 1/3)

rewrite304.0ms (1.1%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
64×add-cbrt-cube_binary32
64×add-exp-log_binary32
57×pow1_binary32
38×cbrt-unprod_binary32
38×prod-exp_binary32
Counts
4 → 123
Calls

4 calls:

21.0ms
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay)))
7.0ms
(*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay))
6.0ms
(*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))
3.0ms
(*.f32 u0 1/3)
Compiler

Compiled 5716 to 2184 computations (61.8% saved)

series1.1s (4.1%)

Error
0.1b
Counts
4 → 71
Calls

4 calls:

889.0ms
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay)))
32.0ms
(*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay))
21.0ms
(*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))
11.0ms
(*.f32 u0 1/3)
Compiler

Compiled 13173 to 9693 computations (26.4% saved)

simplify282.0ms (1%)

Algorithm
egg-herbie
Rules
749×associate-*l*_binary32
465×times-frac_binary32
426×associate-/l*_binary32
241×associate-/r*_binary32
165×associate-*l/_binary32
Counts
194 → 165
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
045017628
1137016350
2534216350

prune344.0ms (1.3%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New1623165
Fresh21618
Picked011
Done000
Total16420184
Error
0.1b
Counts
184 → 20
Alt Table
StatusErrorProgram
11.0b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (-.f32 (*.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 cos2phi (*.f32 alphax alphax))) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
23.2b
(log.f32 (exp.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
13.9b
(/.f32 (neg.f32 (+.f32 (*.f32 2 (log.f32 (cbrt.f32 (-.f32 1 u0)))) (log.f32 (cbrt.f32 (-.f32 1 u0))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.6b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay)))
4.2b
(exp.f32 (log.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(*.f32 (*.f32 (/.f32 (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0)))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(*.f32 (/.f32 (*.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))))) (*.f32 (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
21.9b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (log.f32 (exp.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)))))
2.6b
(+.f32 (+.f32 (*.f32 1/2 (/.f32 (*.f32 u0 u0) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (+.f32 (/.f32 u0 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (*.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))) (*.f32 1/4 (/.f32 (pow.f32 u0 4) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
18.3b
(*.f32 (/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (-.f32 (/.f32 (*.f32 cos2phi cos2phi) (pow.f32 alphax 4)) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.9b
(*.f32 (*.f32 (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))))) (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))))) (/.f32 (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
2.8b
(*.f32 (*.f32 (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))))) (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))))))
12.7b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
3.0b
(/.f32 (sqrt.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4))))) (/.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))) (sqrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))))))
2.9b
(*.f32 (*.f32 (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.6b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 1 (/.f32 alphay (/.f32 sin2phi alphay)))))
13.4b
(/.f32 (neg.f32 (-.f32 (log.f32 (-.f32 1 (pow.f32 u0 3))) (log.f32 (+.f32 1 (+.f32 u0 (*.f32 u0 u0)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.8b
(*.f32 (/.f32 1 (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 (sqrt.f32 sin2phi) (/.f32 alphay (/.f32 (sqrt.f32 sin2phi) alphay)))))
2.6b
(+.f32 (/.f32 (*.f32 u0 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 u0 (*.f32 u0 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))) (+.f32 (*.f32 1/3 (/.f32 (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (pow.f32 u0 3)) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))) (*.f32 1/4 (/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))))))
Compiler

Compiled 7545 to 3633 computations (51.8% saved)

localize141.0ms (0.5%)

Local error

Found 4 expressions with local error:

0.4b
(*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))
0.4b
(*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))
0.4b
(/.f32 (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (pow.f32 u0 3)) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))
2.6b
(/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))

rewrite442.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
160×add-exp-log_binary32
94×prod-exp_binary32
78×add-cbrt-cube_binary32
60×pow1_binary32
42×cbrt-unprod_binary32
Counts
4 → 140
Calls

4 calls:

19.0ms
(/.f32 (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (pow.f32 u0 3)) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))
18.0ms
(/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))
9.0ms
(*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))
8.0ms
(*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))
Compiler

Compiled 13047 to 2411 computations (81.5% saved)

series476.0ms (1.8%)

Error
0.1b
Counts
4 → 48
Calls

4 calls:

203.0ms
(/.f32 (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (pow.f32 u0 3)) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))
162.0ms
(/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))
43.0ms
(*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))
41.0ms
(*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))
Compiler

Compiled 10108 to 3986 computations (60.6% saved)

simplify289.0ms (1.1%)

Algorithm
egg-herbie
Rules
487×unswap-sqr_binary32
338×associate-*r*_binary32
331×associate-*l*_binary32
306×associate-/l*_binary32
185×times-frac_binary32
Counts
188 → 150
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
026111436
158310274
2308010190
3498910190
4497310190

prune215.0ms (0.8%)

Pruning

20 alts after pruning (18 fresh and 2 done)

PrunedKeptTotal
New1500150
Fresh01818
Picked011
Done011
Total15020170
Error
0.1b
Counts
170 → 20
Alt Table
StatusErrorProgram
11.0b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (-.f32 (*.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 cos2phi (*.f32 alphax alphax))) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
23.2b
(log.f32 (exp.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
13.9b
(/.f32 (neg.f32 (+.f32 (*.f32 2 (log.f32 (cbrt.f32 (-.f32 1 u0)))) (log.f32 (cbrt.f32 (-.f32 1 u0))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.6b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (*.f32 (*.f32 alphax alphax) (*.f32 alphay alphay)))
4.2b
(exp.f32 (log.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(*.f32 (*.f32 (/.f32 (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0)))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(*.f32 (/.f32 (*.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (neg.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))))) (*.f32 (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (/.f32 (cbrt.f32 (log.f32 (-.f32 1 u0))) (cbrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
21.9b
(*.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (log.f32 (exp.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)))))
2.6b
(+.f32 (+.f32 (*.f32 1/2 (/.f32 (*.f32 u0 u0) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (+.f32 (/.f32 u0 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) (*.f32 1/3 (/.f32 (pow.f32 u0 3) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))) (*.f32 1/4 (/.f32 (pow.f32 u0 4) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
18.3b
(*.f32 (/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (-.f32 (/.f32 (*.f32 cos2phi cos2phi) (pow.f32 alphax 4)) (/.f32 (*.f32 sin2phi sin2phi) (pow.f32 alphay 4)))) (-.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.9b
(*.f32 (*.f32 (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))))) (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))))) (/.f32 (cbrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
2.8b
(*.f32 (*.f32 (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))))) (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))))))
12.7b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (/.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u0)))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))
3.0b
(/.f32 (sqrt.f32 (+.f32 u0 (+.f32 (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 1/3 u0))) (*.f32 1/4 (pow.f32 u0 4))))) (/.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))) (sqrt.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))))))
2.9b
(*.f32 (*.f32 (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))))) (cbrt.f32 (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.6b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 1 (/.f32 alphay (/.f32 sin2phi alphay)))))
13.4b
(/.f32 (neg.f32 (-.f32 (log.f32 (-.f32 1 (pow.f32 u0 3))) (log.f32 (+.f32 1 (+.f32 u0 (*.f32 u0 u0)))))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))
2.8b
(*.f32 (/.f32 1 (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))) (/.f32 (+.f32 u0 (+.f32 (*.f32 1/4 (pow.f32 u0 4)) (*.f32 (*.f32 u0 u0) (+.f32 1/2 (*.f32 u0 1/3))))) (sqrt.f32 (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))))
12.7b
(/.f32 (neg.f32 (log.f32 (-.f32 1 u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 (sqrt.f32 sin2phi) (/.f32 alphay (/.f32 (sqrt.f32 sin2phi) alphay)))))
2.6b
(+.f32 (/.f32 (*.f32 u0 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 u0 (*.f32 u0 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))) (+.f32 (*.f32 1/3 (/.f32 (*.f32 (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax)) (pow.f32 u0 3)) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))) (*.f32 1/4 (/.f32 (*.f32 (pow.f32 u0 4) (*.f32 (*.f32 alphay alphay) (*.f32 alphax alphax))) (+.f32 (*.f32 cos2phi (*.f32 alphay alphay)) (*.f32 (*.f32 alphax alphax) sin2phi)))))))
Compiler

Compiled 6225 to 1599 computations (74.3% saved)

regimes15.2s (56%)

Accuracy

Total 0.5b remaining (81.4%)

Threshold costs 0.5b (81.4%)

Compiler

Compiled 254107 to 154454 computations (39.2% saved)

bsearch25.0ms (0.1%)

Compiler

Compiled 8 to 7 computations (12.5% saved)

simplify8.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03993
16093
27193
38093
49293
510593
611493
712093
812293
912193

end3.0ms (0%)

Compiler

Compiled 67 to 40 computations (40.3% saved)

sample3.2s (11.6%)

Algorithm
intervals
Results
792.0ms8000×body128valid
339.0ms8000×pre128true
Compiler

Compiled 1174 to 671 computations (42.8% saved)

Profiling

Loading profile data...