Details

Time bar (total: 3.9s)

analyze4.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
74.9%25%0.1%3
87.4%12.5%0.1%4
93.7%6.2%0.1%5
96.8%3.1%0.1%6
98.3%1.6%0.1%7
99.1%0.8%0.1%8
99.5%0.4%0.1%9
99.7%0.2%0.1%10
99.8%0.1%0.1%11
99.9%0%0.1%12
99.9%0%0.1%13
99.9%0%0.1%14
Compiler

Compiled 22 to 13 computations (40.9% saved)

sample871.0ms (22.3%)

Infinites
0% of outputs are infinite.
Results
681.0ms8256×body128valid
Compiler

Compiled 65 to 38 computations (41.5% saved)

simplify104.0ms (2.7%)

Algorithm
egg-herbie
Rules
620×fma-def_binary64
549×sub-neg_binary64
460×distribute-neg-frac_binary64
455×cancel-sign-sub-inv_binary64
430×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
12324
25224
310524
419924
533024
644224
760324
890124
9230424
10338624
11395624
12445424
13473524
14523824

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
30.5b
Counts
3 → 1
Alt Table
StatusErrorProgram
30.5b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
Compiler

Compiled 80 to 44 computations (45% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
4.1b
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
29.9b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

series56.0ms (1.4%)

Counts
3 → 72
Calls

3 calls:

40.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
8.0ms
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
8.0ms
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))

rewrite17.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
times-frac_binary64
add-log-exp_binary64
Counts
3 → 64
Calls

3 calls:

6.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
5.0ms
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
3.0ms
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))

simplify88.0ms (2.2%)

Algorithm
egg-herbie
Rules
485×fma-def_binary64
328×times-frac_binary64
299×associate-/l*_binary64
294×fma-neg_binary64
248×associate-/r*_binary64
Counts
136 → 136
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01362837
13562636
212542600
345602600
450372600

prune105.0ms (2.7%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1324136
Fresh000
Picked101
Done000
Total1334137
Error
0.3b
Counts
137 → 4
Alt Table
StatusErrorProgram
30.5b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))) (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))))
33.0b
-1
31.2b
1
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
Compiler

Compiled 4083 to 2133 computations (47.8% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
0.0b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
20.9b
(/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
23.3b
(/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

series147.0ms (3.8%)

Counts
3 → 72
Calls

3 calls:

65.0ms
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
58.0ms
(/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
24.0ms
(/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

rewrite60.0ms (1.5%)

Algorithm
rewrite-expression-head
Rules
81×prod-diff_binary64
67×times-frac_binary64
51×add-sqr-sqrt_binary64
49×*-un-lft-identity_binary64
48×associate-/r/_binary64
Counts
3 → 172
Calls

3 calls:

16.0ms
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
10.0ms
(/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
5.0ms
(/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

simplify286.0ms (7.3%)

Algorithm
egg-herbie
Rules
499×fma-neg_binary64
337×distribute-rgt-neg-in_binary64
284×distribute-neg-frac_binary64
195×sub-neg_binary64
182×associate-/l*_binary64
Counts
244 → 307
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
034515319
188711002
232528719
348788719
448948719

prune420.0ms (10.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New3601361
Fresh123
Picked011
Done000
Total3614365
Error
0.3b
Counts
365 → 4
Alt Table
StatusErrorProgram
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))))
31.2b
1
33.0b
-1
Compiler

Compiled 21466 to 11704 computations (45.5% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))))
0.0b
(expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))
20.9b
(/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
23.3b
(/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

series80.0ms (2%)

Counts
3 → 72
Calls

3 calls:

31.0ms
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))))
24.0ms
(/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
24.0ms
(expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))

rewrite25.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
27×prod-diff_binary64
27×add-sqr-sqrt_binary64
25×*-un-lft-identity_binary64
23×add-cube-cbrt_binary64
16×times-frac_binary64
Counts
3 → 92
Calls

3 calls:

10.0ms
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))))
5.0ms
(/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
0.0ms
(expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4))))))

simplify160.0ms (4.1%)

Algorithm
egg-herbie
Rules
613×fma-def_binary64
410×fma-neg_binary64
392×associate-/r/_binary64
320×associate-/l/_binary64
306×cancel-sign-sub-inv_binary64
Counts
164 → 165
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02357349
15555759
220375095
348415095
449795095

prune261.0ms (6.7%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2240224
Fresh022
Picked011
Done011
Total2244228
Error
0.3b
Counts
228 → 4
Alt Table
StatusErrorProgram
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))))
31.2b
1
33.0b
-1
Compiler

Compiled 11706 to 6732 computations (42.5% saved)

localize0.0ms (0%)

prune4.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New000
Fresh011
Picked011
Done022
Total044
Error
0.3b
Counts
4 → 4
Alt Table
StatusErrorProgram
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (/.f64 (*.f64 (*.f64 y 4) y) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
30.5b
(-.f64 (/.f64 (*.f64 x x) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))) (expm1.f64 (log1p.f64 (/.f64 (*.f64 y (*.f64 y 4)) (fma.f64 x x (*.f64 y (*.f64 y 4)))))))
31.2b
1
33.0b
-1
Compiler

Compiled 69 to 42 computations (39.1% saved)

regimes1.0s (26.1%)

Accuracy

Total 11.8b remaining (97.2%)

Threshold costs 0b (0%)

Counts
98 → 5
Compiler

Compiled 14316 to 8672 computations (39.4% saved)

bsearch67.0ms (1.7%)

Steps
ItersRangePoint
9
1.0139683234247327e+138
1.5631059904905651e+147
1.53922962851806e+147
5
1.411795836989264e-153
3.649414678791937e-153
1.9388453121044746e-153
8
-4.132173779288115e-121
-1.2422370898486311e-123
-2.5067818285457853e-122
10
-1.0938974287607881e+169
-1.4976561051222266e+159
-1.511705281598505e+159
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039109
147109
252109
362109
467109
570109
671109
769109

end93.0ms (2.4%)

Compiler

Compiled 223 to 132 computations (40.8% saved)

Profiling

Loading profile data...