Details

Time bar (total: 8.2s)

analyze458.0ms (5.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 39 to 31 computations (20.5% saved)

sample2.4s (29.1%)

Results
2.3s8256×body128valid
1.0msbody128invalid
Compiler

Compiled 94 to 76 computations (19.1% saved)

simplify14.0ms (0.2%)

Algorithm
egg-herbie
Rules
40×fma-neg_binary32
22×sub-neg_binary32
17×cancel-sign-sub-inv_binary32
15×fma-def_binary32
11×*-commutative_binary32
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01422
12621
23821
34621
45621
56721
68221
710621
811921
912521
1014421
1114021
1216721
1318021
1418421
1518521
1616321

prune58.0ms (0.7%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
14.0b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 90 to 77 computations (14.4% saved)

localize35.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
0.1b
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
0.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.3b
(*.f32 (*.f32 2 (PI.f32)) u2)

series206.0ms (2.5%)

Counts
4 → 52
Calls

4 calls:

188.0ms
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
11.0ms
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
3.0ms
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
3.0ms
(*.f32 (*.f32 2 (PI.f32)) u2)

rewrite18.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
21×sqrt-prod_binary32
18×add-sqr-sqrt_binary32
14×associate-*l*_binary32
13×*-un-lft-identity_binary32
13×add-cube-cbrt_binary32
Counts
4 → 82
Calls

4 calls:

6.0ms
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
4.0ms
(*.f32 (*.f32 2 (PI.f32)) u2)
4.0ms
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
1.0ms
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))

simplify121.0ms (1.5%)

Algorithm
egg-herbie
Rules
532×cancel-sign-sub-inv_binary32
449×fma-neg_binary32
324×times-frac_binary32
243×associate-/r*_binary32
229×associate-/l*_binary32
Counts
134 → 168
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02813614
17513315
224193199
345973191
450253191

prune230.0ms (2.8%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New15612168
Fresh101
Picked101
Done000
Total15812170
Error
0.1b
Counts
170 → 12
Alt Table
StatusErrorProgram
0.9b
(*.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
6.6b
(log.f32 (pow.f32 (exp.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
2.1b
(+.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (fma.f32 (*.f32 2/3 (pow.f32 u2 4)) (pow.f32 (PI.f32) 2) (*.f32 (*.f32 u2 u2) -2)))))
1.2b
(*.f32 (exp.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
1.7b
(exp.f32 (+.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (log.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
6.6b
(*.f32 (log.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.6b
(*.f32 (sqrt.f32 (*.f32 (cbrt.f32 (log1p.f32 (neg.f32 u1))) (cbrt.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (cbrt.f32 (log1p.f32 (neg.f32 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log1p.f32 (expm1.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
1.2b
(*.f32 (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.9b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
Compiler

Compiled 5041 to 3090 computations (38.7% saved)

localize41.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.2b
(log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
0.3b
(expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.3b
(*.f32 (*.f32 2 (PI.f32)) u2)

series175.0ms (2.1%)

Counts
3 → 44
Calls

3 calls:

164.0ms
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
6.0ms
(log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
5.0ms
(expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))

rewrite10.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
13×associate-*l*_binary32
12×add-sqr-sqrt_binary32
11×sqrt-prod_binary32
*-un-lft-identity_binary32
add-cube-cbrt_binary32
Counts
3 → 55
Calls

3 calls:

7.0ms
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.0ms
(expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.0ms
(log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))

simplify99.0ms (1.2%)

Algorithm
egg-herbie
Rules
741×fma-def_binary32
500×times-frac_binary32
437×fma-neg_binary32
401×cancel-sign-sub-inv_binary32
286×associate-/r*_binary32
Counts
99 → 139
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02502959
16442759
220452648
346342628
453392628

prune203.0ms (2.5%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New1643167
Fresh3811
Picked101
Done000
Total16811179
Error
0.1b
Counts
179 → 11
Alt Table
StatusErrorProgram
0.9b
(*.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
6.6b
(log.f32 (pow.f32 (exp.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
2.1b
(+.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (fma.f32 (*.f32 2/3 (pow.f32 u2 4)) (pow.f32 (PI.f32) 2) (*.f32 (*.f32 u2 u2) -2)))))
1.2b
(*.f32 (exp.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.7b
(+.f32 (*.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (*.f32 (sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sin.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
0.9b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))))
1.7b
(exp.f32 (+.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (log.f32 (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))
6.6b
(*.f32 (log.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
1.2b
(*.f32 (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
Compiler

Compiled 4925 to 2987 computations (39.4% saved)

localize49.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
0.3b
(expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
0.3b
(*.f32 u2 (PI.f32))
0.6b
(*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))

series240.0ms (2.9%)

Counts
4 → 36
Calls

4 calls:

212.0ms
(log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
15.0ms
(*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
12.0ms
(expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
2.0ms
(*.f32 u2 (PI.f32))

rewrite21.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
133×pow1_binary32
72×pow-prod-down_binary32
60×sqrt-pow1_binary32
17×pow-prod-up_binary32
14×add-sqr-sqrt_binary32
Counts
4 → 110
Calls

4 calls:

9.0ms
(*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
3.0ms
(*.f32 u2 (PI.f32))
0.0ms
(log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
0.0ms
(expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))

simplify76.0ms (0.9%)

Algorithm
egg-herbie
Rules
673×unswap-sqr_binary32
553×fma-neg_binary32
421×associate-/r*_binary32
369×*-commutative_binary32
197×fma-def_binary32
Counts
146 → 134
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01491625
13081411
211401323
331081302
451641302

prune280.0ms (3.4%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1640164
Fresh01010
Picked011
Done000
Total16411175
Error
0.1b
Counts
175 → 11
Alt Table
StatusErrorProgram
0.9b
(*.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
6.6b
(log.f32 (pow.f32 (exp.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
2.1b
(+.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (fma.f32 (*.f32 2/3 (pow.f32 u2 4)) (pow.f32 (PI.f32) 2) (*.f32 (*.f32 u2 u2) -2)))))
1.2b
(*.f32 (exp.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.7b
(+.f32 (*.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (*.f32 (sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sin.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
0.9b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))))
1.7b
(exp.f32 (+.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (log.f32 (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))
6.6b
(*.f32 (log.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
1.2b
(*.f32 (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
Compiler

Compiled 4908 to 2791 computations (43.1% saved)

localize75.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
0.5b
(cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
0.5b
(sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
0.5b
(*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1))

series143.0ms (1.7%)

Counts
4 → 56
Calls

4 calls:

75.0ms
(*.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
27.0ms
(*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1))
21.0ms
(cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
20.0ms
(sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))

rewrite15.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
16×associate-*r*_binary32
12×add-sqr-sqrt_binary32
11×add-cbrt-cube_binary32
11×add-exp-log_binary32
11×pow1_binary32
Counts
4 → 70
Calls

4 calls:

6.0ms
(*.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
3.0ms
(*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1))
1.0ms
(sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
1.0ms
(cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))

simplify152.0ms (1.8%)

Algorithm
egg-herbie
Rules
651×fma-def_binary32
477×times-frac_binary32
432×associate-*l*_binary32
302×associate-/r*_binary32
294×associate-/l*_binary32
Counts
126 → 222
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04587318
114116168
248986156
352946156

prune376.0ms (4.6%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2193222
Fresh369
Picked101
Done011
Total22310233
Error
0.0b
Counts
233 → 10
Alt Table
StatusErrorProgram
2.1b
(+.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (fma.f32 (*.f32 2/3 (pow.f32 u2 4)) (pow.f32 (PI.f32) 2) (*.f32 (*.f32 u2 u2) -2)))))
1.2b
(*.f32 (exp.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.7b
(+.f32 (*.f32 (*.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)) (*.f32 (cbrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (cbrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))) (cbrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (*.f32 (*.f32 (sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sin.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
0.8b
(+.f32 (*.f32 (log.f32 (exp.f32 (*.f32 (cos.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cos.f32 1)))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (*.f32 (sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sin.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))))
0.9b
(*.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
0.7b
(+.f32 (*.f32 (/.f32 (+.f32 (cos.f32 (+.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 1)) (cos.f32 (-.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 1))) 2) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (*.f32 (sin.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (sin.f32 1)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
1.2b
(*.f32 (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (*.f32 (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
0.9b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))) (cbrt.f32 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))
Compiler

Compiled 13778 to 9296 computations (32.5% saved)

regimes2.5s (30.8%)

Accuracy

Total 0.3b remaining (73.6%)

Threshold costs 0.3b (73.6%)

Counts
193 → 1
Compiler

Compiled 53695 to 43226 computations (19.5% 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
01831
12731
23131
33331
43331

end209.0ms (2.5%)

Compiler

Compiled 375 to 281 computations (25.1% saved)

Profiling

Loading profile data...