Details

Time bar (total: 8.8s)

analyze421.0ms (4.8%)

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 37 to 28 computations (24.3% saved)

sample2.1s (24.3%)

Results
2.1s8256×body128valid
1.0msbody128invalid
Compiler

Compiled 88 to 67 computations (23.9% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
11×sub-neg_binary32
+-commutative_binary32
fma-def_binary32
*-commutative_binary32
div-sub_binary32
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01117
11717
22117
32717
43417
54417
65417
76917
87617
97917
108017
116017

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.5b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.5b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
Compiler

Compiled 42 to 33 computations (21.4% saved)

localize36.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f32 (/.f32 u1 (-.f32 1 u1)))
0.2b
(sin.f32 (*.f32 314159265359/50000000000 u2))
0.4b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
0.4b
(*.f32 314159265359/50000000000 u2)

series33.0ms (0.4%)

Counts
4 → 24
Calls

4 calls:

23.0ms
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
6.0ms
(sqrt.f32 (/.f32 u1 (-.f32 1 u1)))
2.0ms
(sin.f32 (*.f32 314159265359/50000000000 u2))
1.0ms
(*.f32 314159265359/50000000000 u2)

rewrite100.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
532×log-prod_binary32
271×prod-diff_binary32
196×expm1-udef_binary32
195×log1p-udef_binary32
173×log-pow_binary32
Counts
4 → 96
Calls

4 calls:

98.0ms
(sqrt.f32 (/.f32 u1 (-.f32 1 u1)))
98.0ms
(sin.f32 (*.f32 314159265359/50000000000 u2))
98.0ms
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
98.0ms
(*.f32 314159265359/50000000000 u2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01136
122736
2272436
3508536
000
100

simplify75.0ms (0.8%)

Algorithm
egg-herbie
Rules
790×fma-neg_binary32
418×fma-def_binary32
400×associate-/r*_binary32
229×associate-+l+_binary32
202×associate--r+_binary32
Counts
120 → 123
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01021054
1319986
21052868
34253868
44979868
54943868

prune138.0ms (1.6%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New11211123
Fresh000
Picked101
Done000
Total11311124
Error
0.0b
Counts
124 → 11
Alt Table
StatusErrorProgram
2.4b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (pow.f32 (sqrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2))
0.5b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3)))
14.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))) (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))) (log.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))))
0.5b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))))
0.9b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 3))
0.6b
(*.f32 (*.f32 (cbrt.f32 (/.f32 u1 (-.f32 1 u1))) (cbrt.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
0.9b
(pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))) 3)
2.4b
(-.f32 (+.f32 (*.f32 314159265359/50000000000 (*.f32 u2 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 3060196847853821555298148281676017575122444629042460390799/37500000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 5) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))) (+.f32 (*.f32 302029322777818351566783844332719832329455959975176141755859165754785028165295919/3937500000000000000000000000000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 7) (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 31006276680305942139213528068663279/750000000000000000000000000000000 (*.f32 (pow.f32 u2 3) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))))
7.8b
(*.f32 (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))))) (log.f32 (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
3.7b
(exp.f32 (log.f32 (*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))))
0.6b
(*.f32 (expm1.f32 (log1p.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
Compiler

Compiled 2857 to 2270 computations (20.5% saved)

localize38.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))
0.2b
(sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))))
0.4b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))))
0.4b
(*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))

series28.0ms (0.3%)

Counts
4 → 56
Calls

4 calls:

22.0ms
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))))
2.0ms
(*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))
2.0ms
(sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))))
1.0ms
(sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))

rewrite94.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
450×prod-diff_binary32
222×expm1-udef_binary32
221×log1p-udef_binary32
202×log-pow_binary32
132×fma-def_binary32
Counts
4 → 83
Calls

4 calls:

93.0ms
(sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))
93.0ms
(sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))))
93.0ms
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))))
92.0ms
(*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
126934
2312634
3491734
4509934
000
100

simplify76.0ms (0.9%)

Algorithm
egg-herbie
Rules
749×fma-neg_binary32
338×fma-def_binary32
257×sub-neg_binary32
224×distribute-neg-in_binary32
218×associate-/r*_binary32
Counts
139 → 114
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0881060
12541004
2794892
33121892
44861892
54988892

prune129.0ms (1.5%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New1122114
Fresh2810
Picked101
Done000
Total11510125
Error
0.0b
Counts
125 → 10
Alt Table
StatusErrorProgram
0.5b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3)))
0.9b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 3))
0.6b
(*.f32 (*.f32 (cbrt.f32 (/.f32 u1 (-.f32 1 u1))) (cbrt.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
0.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 u2 (pow.f32 98696044010906577398881/2500000000000000000000 1/2))))
0.9b
(pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))) 3)
2.4b
(-.f32 (+.f32 (*.f32 314159265359/50000000000 (*.f32 u2 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 3060196847853821555298148281676017575122444629042460390799/37500000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 5) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))) (+.f32 (*.f32 302029322777818351566783844332719832329455959975176141755859165754785028165295919/3937500000000000000000000000000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 7) (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 31006276680305942139213528068663279/750000000000000000000000000000000 (*.f32 (pow.f32 u2 3) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))))
7.8b
(*.f32 (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))))) (log.f32 (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
14.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))) (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))) (log.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))))
3.7b
(exp.f32 (log.f32 (*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))))
0.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 (cbrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))) (cbrt.f32 (*.f32 u2 314159265359/50000000000)))))
Compiler

Compiled 2489 to 1941 computations (22% saved)

localize44.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2)
0.4b
(*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3))
0.4b
(*.f32 314159265359/50000000000 u2)
0.7b
(pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3)

series71.0ms (0.8%)

Counts
3 → 36
Calls

3 calls:

59.0ms
(*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3))
8.0ms
(pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3)
4.0ms
(pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2)

rewrite88.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
338×prod-diff_binary32
240×expm1-udef_binary32
239×log1p-udef_binary32
209×log-pow_binary32
139×add-sqr-sqrt_binary32
Counts
3 → 57
Calls

3 calls:

87.0ms
(pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2)
87.0ms
(*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3))
87.0ms
(pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01440
129640
2327140
3484740
4487140
000
100

simplify79.0ms (0.9%)

Algorithm
egg-herbie
Rules
537×associate-/l*_binary32
444×fma-def_binary32
367×fma-neg_binary32
343×associate-/r*_binary32
328×associate-*r*_binary32
Counts
93 → 96
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01151366
13311280
212161072
347511072
449991072
549611072

prune147.0ms (1.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1093112
Fresh369
Picked101
Done000
Total1139122
Error
0.0b
Counts
122 → 9
Alt Table
StatusErrorProgram
2.4b
(-.f32 (+.f32 (*.f32 314159265359/50000000000 (*.f32 u2 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 3060196847853821555298148281676017575122444629042460390799/37500000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 5) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))) (+.f32 (*.f32 302029322777818351566783844332719832329455959975176141755859165754785028165295919/3937500000000000000000000000000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 7) (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 31006276680305942139213528068663279/750000000000000000000000000000000 (*.f32 (pow.f32 u2 3) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))))
3.0b
(cbrt.f32 (*.f32 (sqrt.f32 (/.f32 (pow.f32 u1 3) (pow.f32 (-.f32 1 u1) 3))) (fma.f32 31006276680305942139213528068663279/125000000000000000000000000000000 (pow.f32 u2 3) (fma.f32 3926381196111638570368189976325357820282927479677289842826169154812205366148846947/93750000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f32 u2 7) (fma.f32 (pow.f32 u2 9) -1222173072672018605869876866523723537468811217154985888808286930155378349843421319946643271006387243132199/5906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 5) -3060196847853821555298148281676017575122444629042460390799/625000000000000000000000000000000000000000000000000000))))))
22.6b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (log.f32 (+.f32 1 (expm1.f32 (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3))))))
7.8b
(*.f32 (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))))) (log.f32 (cbrt.f32 (exp.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))))) (sin.f32 (*.f32 314159265359/50000000000 u2)))
0.9b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 3))
0.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 u2 (pow.f32 98696044010906577398881/2500000000000000000000 1/2))))
14.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))) (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))) (log.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))))
3.7b
(exp.f32 (log.f32 (*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 314159265359/50000000000 u2)))))
0.6b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2)))))
Compiler

Compiled 3048 to 2529 computations (17% saved)

localize66.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2))))
0.4b
(*.f32 314159265359/50000000000 u2)
0.5b
(pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2)
0.5b
(pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2)

series209.0ms (2.4%)

Counts
3 → 36
Calls

3 calls:

147.0ms
(pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2)
58.0ms
(*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2))))
4.0ms
(pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2)

rewrite75.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
288×log1p-udef_binary32
271×prod-diff_binary32
170×add-sqr-sqrt_binary32
170×log1p-expm1-u_binary32
170×expm1-log1p-u_binary32
Counts
3 → 58
Calls

3 calls:

73.0ms
(*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2))))
73.0ms
(pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2)
73.0ms
(pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01849
137741
2401241
3485641
000
100

simplify52.0ms (0.6%)

Algorithm
egg-herbie
Rules
535×associate-/l*_binary32
490×associate-*l*_binary32
428×fma-def_binary32
321×associate-/r*_binary32
220×cancel-sign-sub-inv_binary32
Counts
94 → 91
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01211432
13591311
213351095
350011095

prune194.0ms (2.2%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1354139
Fresh358
Picked101
Done000
Total1399148
Error
0.0b
Counts
148 → 9
Alt Table
StatusErrorProgram
0.8b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (*.f32 (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 4) (cbrt.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))) 2))))))
0.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (sin.f32 (*.f32 u2 (pow.f32 98696044010906577398881/2500000000000000000000 1/2))))
2.4b
(-.f32 (+.f32 (*.f32 314159265359/50000000000 (*.f32 u2 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 3060196847853821555298148281676017575122444629042460390799/37500000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 5) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))) (+.f32 (*.f32 302029322777818351566783844332719832329455959975176141755859165754785028165295919/3937500000000000000000000000000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 7) (sqrt.f32 (/.f32 u1 (-.f32 1 u1))))) (*.f32 31006276680305942139213528068663279/750000000000000000000000000000000 (*.f32 (pow.f32 u2 3) (sqrt.f32 (/.f32 u1 (-.f32 1 u1)))))))
3.0b
(cbrt.f32 (*.f32 (sqrt.f32 (/.f32 (pow.f32 u1 3) (pow.f32 (-.f32 1 u1) 3))) (fma.f32 31006276680305942139213528068663279/125000000000000000000000000000000 (pow.f32 u2 3) (fma.f32 3926381196111638570368189976325357820282927479677289842826169154812205366148846947/93750000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f32 u2 7) (fma.f32 (pow.f32 u2 9) -1222173072672018605869876866523723537468811217154985888808286930155378349843421319946643271006387243132199/5906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (*.f32 (pow.f32 u2 5) -3060196847853821555298148281676017575122444629042460390799/625000000000000000000000000000000000000000000000000000))))))
22.6b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (log.f32 (+.f32 1 (expm1.f32 (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 3))))))
14.6b
(*.f32 (sqrt.f32 (/.f32 u1 (-.f32 1 u1))) (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))) (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))) (log.f32 (cbrt.f32 (exp.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)))))))
0.8b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 314159265359/50000000000 u2)) 3)) 2)))))
0.5b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2))))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (*.f32 314159265359/50000000000 u2)) 2)))))
0.4b
(cbrt.f32 (*.f32 (pow.f32 (/.f32 u1 (-.f32 1 u1)) 3/2) (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 314159265359/50000000000 u2))) (pow.f32 (sin.f32 (sqrt.f32 (*.f32 98696044010906577398881/2500000000000000000000 (*.f32 u2 u2)))) 2)))))
Compiler

Compiled 4990 to 4160 computations (16.6% saved)

regimes4.2s (48%)

Accuracy

Total 0.4b remaining (87.7%)

Threshold costs 0.4b (87.7%)

Counts
256 → 1
Compiler

Compiled 55690 to 46337 computations (16.8% saved)

simplify3.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
02451
13351
23751
33951
44051
53951

end241.0ms (2.7%)

Compiler

Compiled 383 to 318 computations (17% saved)

Profiling

Loading profile data...