Details

Time bar (total: 21.8s)

analyze259.0ms (1.2%)

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.4s (10.9%)

Results
2.3s8256×body128valid
Compiler

Compiled 147 to 112 computations (23.8% saved)

simplify87.0ms (0.4%)

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.4b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.4b
(*.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.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.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)

series1.1s (5.1%)

Counts
4 → 56
Calls

4 calls:

1.1s
(*.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)))
32.0ms
(/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))
3.0ms
(/.f32 (neg.f32 (PI.f32)) s)
2.0ms
(/.f32 (PI.f32) s)

rewrite78.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
90×*-un-lft-identity_binary32
78×add-sqr-sqrt_binary32
67×times-frac_binary32
53×add-cube-cbrt_binary32
19×associate-/l*_binary32
Counts
4 → 186
Calls

4 calls:

48.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)))
9.0ms
(/.f32 (-.f32 1 u) (+.f32 1 (exp.f32 (/.f32 (PI.f32) s))))
3.0ms
(/.f32 (neg.f32 (PI.f32)) s)
2.0ms
(/.f32 (PI.f32) s)

simplify170.0ms (0.8%)

Algorithm
egg-herbie
Rules
765×times-frac_binary32
545×associate-/l*_binary32
336×fma-def_binary32
158×*-commutative_binary32
130×distribute-rgt-in_binary32
Counts
242 → 266
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
066210979
1198410453
2525310453

prune400.0ms (1.8%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2597266
Fresh000
Picked101
Done000
Total2607267
Error
0.0b
Counts
267 → 7
Alt Table
StatusErrorProgram
0.9b
(*.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.5b
(+.f32 (*.f32 (log.f32 (+.f32 (/.f32 1 (sqrt.f32 (+.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 (-.f32 (/.f32 1 (sqrt.f32 (+.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.8b
(*.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 (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.6b
(+.f32 (*.f32 (neg.f32 s) (*.f32 2 (log.f32 (cbrt.f32 (+.f32 -1 (/.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 (cbrt.f32 (+.f32 -1 (/.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.6b
(*.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.9b
(*.f32 (*.f32 (cbrt.f32 s) (cbrt.f32 s)) (*.f32 (neg.f32 (cbrt.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 15060 to 8444 computations (43.9% saved)

localize83.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(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)))
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)

series2.0s (9.1%)

Counts
2 → 48
Calls

2 calls:

1.1s
(*.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))
885.0ms
(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)))

rewrite50.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt_binary32
12×*-un-lft-identity_binary32
11×log-prod_binary32
10×associate-*r*_binary32
sqrt-prod_binary32
Counts
2 → 57
Calls

2 calls:

39.0ms
(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)))
5.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))

simplify197.0ms (0.9%)

Algorithm
egg-herbie
Rules
797×fma-def_binary32
728×associate-/l*_binary32
259×*-commutative_binary32
230×+-commutative_binary32
188×associate-+r+_binary32
Counts
105 → 157
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
082113720
1285513133
2564513133

prune1.8s (8.3%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New5215526
Fresh156
Picked011
Done000
Total52211533
Error
0.0b
Counts
533 → 11
Alt Table
StatusErrorProgram
0.8b
(*.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 (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 (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)))) (log.f32 (sqrt.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.4b
(+.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.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))))
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 -1 (pow.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) 3)))) (log.f32 (sqrt.f32 (+.f32 (/.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) (+.f32 1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
0.9b
(*.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.5b
(+.f32 (*.f32 (log.f32 (+.f32 (/.f32 1 (sqrt.f32 (+.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 (-.f32 (/.f32 1 (sqrt.f32 (+.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.6b
(+.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 (cbrt.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))) (cbrt.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)))) (cbrt.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)))))
0.4b
(+.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 (*.f32 2 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
0.6b
(+.f32 (*.f32 (neg.f32 s) (*.f32 2 (log.f32 (cbrt.f32 (+.f32 -1 (/.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 (cbrt.f32 (+.f32 -1 (/.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.6b
(*.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))))
Compiler

Compiled 56179 to 32116 computations (42.8% saved)

localize98.0ms (0.5%)

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 (+.f32 (log.f32 (sqrt.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)))) (log.f32 (sqrt.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)

series2.0s (9.2%)

Counts
1 → 24
Calls

1 calls:

2.0s
(*.f32 (+.f32 (log.f32 (sqrt.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)))) (log.f32 (sqrt.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))

rewrite28.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
34×log-pow_binary32
32×associate-*l*_binary32
25×pow1_binary32
24×sqrt-pow1_binary32
15×*-un-lft-identity_binary32
Counts
1 → 59
Calls

1 calls:

13.0ms
(*.f32 (+.f32 (log.f32 (sqrt.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)))) (log.f32 (sqrt.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))

simplify142.0ms (0.6%)

Algorithm
egg-herbie
Rules
838×times-frac_binary32
512×associate-/l*_binary32
461×fma-def_binary32
186×*-commutative_binary32
121×+-commutative_binary32
Counts
83 → 113
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05348382
118808079
250548079

prune2.1s (9.5%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New5141515
Fresh189
Picked011
Done011
Total51511526
Error
0.0b
Counts
526 → 11
Alt Table
StatusErrorProgram
1.2b
(+.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 (sqrt.f32 (log.f32 (sqrt.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))))) (*.f32 (neg.f32 s) (*.f32 2 (sqrt.f32 (log.f32 (sqrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))))))))))))
0.8b
(*.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 (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 (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)))) (log.f32 (sqrt.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.4b
(+.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.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))))
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 -1 (pow.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) 3)))) (log.f32 (sqrt.f32 (+.f32 (/.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) (+.f32 1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
0.9b
(*.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.5b
(+.f32 (*.f32 (log.f32 (+.f32 (/.f32 1 (sqrt.f32 (+.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 (-.f32 (/.f32 1 (sqrt.f32 (+.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.4b
(+.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 (*.f32 2 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
0.6b
(+.f32 (*.f32 (neg.f32 s) (*.f32 2 (log.f32 (cbrt.f32 (+.f32 -1 (/.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 (cbrt.f32 (+.f32 -1 (/.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.6b
(*.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))))
Compiler

Compiled 59087 to 34003 computations (42.5% saved)

localize156.0ms (0.7%)

Local error

Found 4 expressions with local error:

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

series3.4s (15.3%)

Counts
2 → 48
Calls

2 calls:

1.7s
(log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))
1.6s
(+.f32 (*.f32 2 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))))))))

rewrite176.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
44×log-prod_binary32
32×cbrt-prod_binary32
27×*-un-lft-identity_binary32
22×associate-+l+_binary32
20×sqrt-prod_binary32
Counts
2 → 77
Calls

2 calls:

93.0ms
(+.f32 (*.f32 2 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))))))))
67.0ms
(log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))

simplify219.0ms (1%)

Algorithm
egg-herbie
Rules
934×fma-def_binary32
576×times-frac_binary32
263×+-commutative_binary32
225×*-commutative_binary32
196×associate-+r+_binary32
Counts
125 → 184
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
076915499
1259815141
2496815141

prune2.8s (13%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New4864490
Fresh358
Picked101
Done022
Total49011501
Error
0.0b
Counts
501 → 11
Alt Table
StatusErrorProgram
0.4b
(+.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 (exp.f32 (*.f32 3 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.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))))))))))))) (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 -1 (pow.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) 3)))) (log.f32 (sqrt.f32 (+.f32 (/.f32 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))) (+.f32 1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
0.5b
(+.f32 (*.f32 (log.f32 (+.f32 (/.f32 1 (sqrt.f32 (+.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 (-.f32 (/.f32 1 (sqrt.f32 (+.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 (*.f32 2 (+.f32 (log.f32 (cbrt.f32 (sqrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
1.2b
(+.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 (sqrt.f32 (log.f32 (sqrt.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))))) (*.f32 (neg.f32 s) (*.f32 2 (sqrt.f32 (log.f32 (sqrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1)))))))))))))
0.8b
(*.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 (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 (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)))) (log.f32 (sqrt.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)))
1.2b
(+.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 (sqrt.f32 (*.f32 3 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.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)))))))))))) (sqrt.f32 (*.f32 3 (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.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))))))))))))) (neg.f32 s)))
0.6b
(+.f32 (*.f32 (neg.f32 s) (*.f32 2 (log.f32 (cbrt.f32 (+.f32 -1 (/.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 (cbrt.f32 (+.f32 -1 (/.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.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 (*.f32 2 (+.f32 (log.f32 (cbrt.f32 (fabs.f32 (cbrt.f32 (+.f32 -1 (/.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))))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (cbrt.f32 (+.f32 -1 (/.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))))))))))))) (log.f32 (cbrt.f32 (sqrt.f32 (+.f32 -1 (/.f32 1 (+.f32 (/.f32 u (+.f32 (exp.f32 (neg.f32 (/.f32 (PI.f32) s))) 1)) (/.f32 (-.f32 1 u) (+.f32 (exp.f32 (/.f32 (PI.f32) s)) 1))))))))) (neg.f32 s)))
0.4b
(+.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 63431 to 37084 computations (41.5% saved)

regimes1.6s (7.1%)

Accuracy

Total 0.3b remaining (84%)

Threshold costs 0.3b (84%)

Counts
249 → 1
Compiler

Compiled 46776 to 32678 computations (30.1% saved)

simplify5.0ms (0%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
038112
162110
287110
3104110
4114110
5117110
6116110

end497.0ms (2.3%)

Compiler

Compiled 1128 to 771 computations (31.6% saved)

Profiling

Loading profile data...