Details

Time bar (total: 45.1s)

analyze247.0ms (0.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%1.6%98.4%0
0%1.6%98.4%1
0%1.6%98.4%2
0.4%1.2%98.4%3
0.6%1%98.4%4
0.9%0.7%98.4%5
1%0.5%98.4%6
1.2%0.4%98.4%7
1.3%0.3%98.4%8
1.4%0.2%98.4%9
1.4%0.1%98.4%10
1.5%0.1%98.4%11
1.5%0.1%98.4%12
1.5%0%98.4%13
1.5%0%98.4%14
Compiler

Compiled 54 to 41 computations (24.1% saved)

sample2.2s (4.9%)

Results
2.1s8256×body128valid
Compiler

Compiled 147 to 112 computations (23.8% saved)

simplify73.0ms (0.2%)

Algorithm
egg-herbie
Rules
1145×fma-def_binary32
518×unswap-sqr_binary32
445×fma-neg_binary32
420×times-frac_binary32
354×associate-*l*_binary32
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
02259
14259
27259
312051
417948
531946
650546
778846
8124946
9258446
10441946
11483246
12482746

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.3b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.3b
(*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))
Compiler

Compiled 127 to 93 computations (26.8% saved)

localize78.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(exp.f32 (/.f32 (neg.f32 (PI.f32)) s))
0.3b
(*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))
0.3b
(/.f32 (PI.f32) s)
0.3b
(/.f32 (neg.f32 (PI.f32)) s)

series954.0ms (2.1%)

Counts
4 → 48
Calls

4 calls:

944.0ms
(*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))
4.0ms
(exp.f32 (/.f32 (neg.f32 (PI.f32)) s))
3.0ms
(/.f32 (PI.f32) s)
3.0ms
(/.f32 (neg.f32 (PI.f32)) s)

rewrite67.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
73×times-frac_binary32
71×add-sqr-sqrt_binary32
69×*-un-lft-identity_binary32
61×add-cube-cbrt_binary32
34×exp-prod_binary32
Counts
4 → 179
Calls

4 calls:

45.0ms
(*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))
5.0ms
(exp.f32 (/.f32 (neg.f32 (PI.f32)) s))
3.0ms
(/.f32 (neg.f32 (PI.f32)) s)
2.0ms
(/.f32 (PI.f32) s)

simplify149.0ms (0.3%)

Algorithm
egg-herbie
Rules
717×times-frac_binary32
490×associate-/l*_binary32
475×associate-/r*_binary32
286×fma-def_binary32
146×*-commutative_binary32
Counts
227 → 273
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
06099743
117909284
252979284

prune367.0ms (0.8%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2667273
Fresh000
Picked101
Done000
Total2677274
Error
0.0b
Counts
274 → 7
Alt Table
StatusErrorProgram
0.4b
(+.f32 (*.f32 (log.f32 (*.f32 (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)) (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (neg.f32 s)) (*.f32 (log.f32 (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)))
0.9b
(*.f32 (*.f32 (neg.f32 s) (sqrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (sqrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.8b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))))
0.9b
(*.f32 (*.f32 (neg.f32 s) (*.f32 (cbrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (cbrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (cbrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.4b
(+.f32 (*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
0.5b
(*.f32 (sqrt.f32 s) (*.f32 (neg.f32 (sqrt.f32 s)) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.3b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)))
Compiler

Compiled 15117 to 8360 computations (44.7% saved)

localize80.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))
0.3b
(*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s))
0.3b
(/.f32 (PI.f32) s)
0.3b
(/.f32 (neg.f32 (PI.f32)) s)

series1.4s (3.1%)

Counts
2 → 48
Calls

2 calls:

1.2s
(*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s))
223.0ms
(sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))

rewrite53.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
21×add-sqr-sqrt_binary32
12×*-un-lft-identity_binary32
10×associate-*r*_binary32
sqrt-prod_binary32
add-cube-cbrt_binary32
Counts
2 → 56
Calls

2 calls:

43.0ms
(sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))
6.0ms
(*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s))

simplify188.0ms (0.4%)

Algorithm
egg-herbie
Rules
855×fma-def_binary32
556×associate-/l*_binary32
313×*-commutative_binary32
206×+-commutative_binary32
166×associate-+r+_binary32
Counts
104 → 148
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
081512754
1283112121
2531012121

prune1.5s (3.4%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New5062508
Fresh156
Picked011
Done000
Total5078515
Error
0.0b
Counts
515 → 8
Alt Table
StatusErrorProgram
0.4b
(+.f32 (*.f32 (log.f32 (*.f32 (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)) (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (neg.f32 s)) (*.f32 (log.f32 (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)))
0.9b
(*.f32 (*.f32 (neg.f32 s) (sqrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (sqrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.8b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))))
0.4b
(+.f32 (*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
0.5b
(*.f32 (sqrt.f32 s) (*.f32 (neg.f32 (sqrt.f32 s)) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.3b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)))
0.3b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (log.f32 (expm1.f32 (log1p.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (neg.f32 s)))
0.5b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (sqrt.f32 s)) (neg.f32 (sqrt.f32 s))))
Compiler

Compiled 52895 to 30061 computations (43.2% saved)

localize97.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s))
0.3b
(/.f32 (PI.f32) s)
0.3b
(/.f32 (neg.f32 (PI.f32)) s)
1.2b
(expm1.f32 (log1p.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))

series217.0ms (0.5%)

Counts
1 → 24
Calls

1 calls:

217.0ms
(expm1.f32 (log1p.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary32
add-sqr-sqrt_binary32
add-cube-cbrt_binary32
add-cbrt-cube_binary32
add-exp-log_binary32
Counts
1 → 11
Calls

1 calls:

0.0ms
(expm1.f32 (log1p.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))

simplify95.0ms (0.2%)

Algorithm
egg-herbie
Rules
449×fma-def_binary32
402×associate-+r+_binary32
288×associate-*r*_binary32
252×associate-/r*_binary32
241×associate-*l*_binary32
Counts
35 → 48
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03715043
112504838
254614838

prune969.0ms (2.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New3440344
Fresh066
Picked011
Done011
Total3448352
Error
0.0b
Counts
352 → 8
Alt Table
StatusErrorProgram
0.4b
(+.f32 (*.f32 (log.f32 (*.f32 (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)) (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (neg.f32 s)) (*.f32 (log.f32 (cbrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)))
0.9b
(*.f32 (*.f32 (neg.f32 s) (sqrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (sqrt.f32 (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.8b
(*.f32 (*.f32 (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))) (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (cbrt.f32 (*.f32 (neg.f32 s) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1)))))
0.4b
(+.f32 (*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
0.5b
(*.f32 (sqrt.f32 s) (*.f32 (neg.f32 (sqrt.f32 s)) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.3b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)))
0.3b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (log.f32 (expm1.f32 (log1p.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (neg.f32 s)))
0.5b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (sqrt.f32 s)) (neg.f32 (sqrt.f32 s))))
Compiler

Compiled 32947 to 18915 computations (42.6% saved)

localize84.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1)))
0.3b
(*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))))
0.3b
(+.f32 (*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
0.3b
(/.f32 (PI.f32) s)

series30.8s (68.2%)

Counts
3 → 52
Calls

3 calls:

19.4s
(+.f32 (*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
5.8s
(*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))))
5.5s
(*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1)))

rewrite104.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
39×add-sqr-sqrt_binary32
32×log-prod_binary32
27×*-un-lft-identity_binary32
20×associate-*l*_binary32
16×distribute-lft-in_binary32
Counts
3 → 106
Calls

3 calls:

43.0ms
(+.f32 (*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
43.0ms
(*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1)))
4.0ms
(*.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))))

simplify816.0ms (1.8%)

Algorithm
egg-herbie
Rules
1161×fma-def_binary32
416×times-frac_binary32
13×cube-mult_binary32
13×unpow3_binary32
12×unpow2_binary32
Counts
158 → 173
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0315288652
1504388652

prune2.7s (6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2983301
Fresh415
Picked101
Done112
Total3045309
Error
0.0b
Counts
309 → 5
Alt Table
StatusErrorProgram
0.5b
(*.f32 (sqrt.f32 s) (*.f32 (neg.f32 (sqrt.f32 s)) (log.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))
0.6b
(+.f32 (*.f32 (*.f32 (neg.f32 s) (*.f32 (cbrt.f32 (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))) (cbrt.f32 (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))))))) (cbrt.f32 (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))))) (*.f32 (neg.f32 s) (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1))))
0.4b
(+.f32 (fma.f32 (neg.f32 s) (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))) (*.f32 (log.f32 (+.f32 (sqrt.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))) 1)) (neg.f32 s))) (*.f32 (log.f32 (-.f32 (sqrt.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))) 1)) (neg.f32 s)))
0.3b
(neg.f32 (fma.f32 s (log1p.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))))) (*.f32 s (log.f32 (+.f32 (sqrt.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))))) -1)))))
0.3b
(+.f32 (*.f32 (log.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))) (neg.f32 s)) (*.f32 (log.f32 (expm1.f32 (log1p.f32 (sqrt.f32 (+.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 1 (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s)))))) -1))))) (neg.f32 s)))
Compiler

Compiled 110985 to 65535 computations (41% saved)

regimes1.6s (3.6%)

Accuracy

Total 0.3b remaining (76.3%)

Threshold costs 0.3b (76.3%)

Counts
278 → 1
Compiler

Compiled 48927 to 33503 computations (31.5% 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
02491
13991
24891
35491
45691
55591

end223.0ms (0.5%)

Compiler

Compiled 470 to 311 computations (33.8% saved)

Profiling

Loading profile data...