Details

Time bar (total: 1.8s)

analyze453.0ms (25.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
25%74.9%0.1%8
34.3%62.4%3.3%9
40.6%52.3%7.2%10
49.1%42.1%8.7%11
56.2%32.6%11.3%12
59.1%27.1%13.8%13
63.7%21.9%14.4%14
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample1.0s (56%)

Results
844.0ms8256×body128valid
64.0ms659×body128invalid
Compiler

Compiled 38 to 26 computations (31.6% saved)

simplify25.0ms (1.4%)

Algorithm
egg-herbie
Rules
354×fma-def_binary64
250×fma-neg_binary64
52×cancel-sign-sub-inv_binary64
45×distribute-rgt-in_binary64
43×associate--r+_binary64
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0911
11711
23011
34911
41079
51728
62558
74208
85528
96248
106548
116648
126218

prune3.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (-.f64 z y) y)
0.0b
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Compiler

Compiled 60 to 36 computations (40% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 1 x) y)
0.0b
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))

series14.0ms (0.8%)

Counts
2 → 48
Calls

2 calls:

10.0ms
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
4.0ms
(*.f64 (-.f64 1 x) y)

rewrite12.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
associate-*l*_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 39
Calls

2 calls:

6.0ms
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
5.0ms
(*.f64 (-.f64 1 x) y)

simplify78.0ms (4.3%)

Algorithm
egg-herbie
Rules
532×associate-+l+_binary64
350×associate-+r+_binary64
329×fma-def_binary64
327×associate-*l*_binary64
256×associate-*r*_binary64
Counts
87 → 72
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
085975
1227871
2653778
31912774
44981774
54972774

prune36.0ms (2%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New72072
Fresh011
Picked011
Done000
Total72274
Error
0b
Counts
74 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (-.f64 z y) y)
0.0b
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Compiler

Compiled 1050 to 488 computations (53.5% saved)

localize4.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x (-.f64 z y) y)

series6.0ms (0.4%)

Counts
1 → 36
Calls

1 calls:

6.0ms
(fma.f64 x (-.f64 z y) y)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 x (-.f64 z y) y)

simplify55.0ms (3.1%)

Algorithm
egg-herbie
Rules
897×neg-mul-1_binary64
618×distribute-rgt-neg-out_binary64
583×distribute-neg-out_binary64
510×distribute-lft-neg-out_binary64
396×unsub-neg_binary64
Counts
46 → 21
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
032526
166374
2139374
3339374
41738374
53791374
65086374

prune7.0ms (0.4%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New21021
Fresh000
Picked011
Done011
Total21223
Error
0b
Counts
23 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (-.f64 z y) y)
0.0b
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Compiler

Compiled 200 to 61 computations (69.5% saved)

regimes48.0ms (2.7%)

Accuracy

Total 0.0b remaining (64.2%)

Threshold costs 0.0b (64.2%)

Counts
11 → 1
Compiler

Compiled 420 to 278 computations (33.8% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
068
188
2138
3158
4168
5168

end39.0ms (2.2%)

Compiler

Compiled 39 to 23 computations (41% saved)

Profiling

Loading profile data...