Details

Time bar (total: 2.0s)

analyze537.0ms (26.9%)

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
28.1%68.6%3.3%9
40.6%52.3%7.2%10
49.1%42.1%8.7%11
51.5%37.3%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 (51.9%)

Results
881.0ms8256×body128valid
68.0ms694×body128invalid
Compiler

Compiled 38 to 26 computations (31.6% saved)

simplify28.0ms (1.4%)

Algorithm
egg-herbie
Rules
299×fma-neg_binary64
252×fma-def_binary64
95×cancel-sign-sub-inv_binary64
42×distribute-rgt-neg-in_binary64
41×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0911
11811
22811
33710
45310
57710
611510
717610
834910
951610
1059410
1166510
1267010
1362710

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 63 to 39 computations (38.1% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x (+.f64 y z) (neg.f64 z))

series6.0ms (0.3%)

Counts
1 → 36
Calls

1 calls:

6.0ms
(fma.f64 x (+.f64 y z) (neg.f64 z))

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 y z) (neg.f64 z))

simplify66.0ms (3.3%)

Algorithm
egg-herbie
Rules
639×distribute-rgt-in_binary64
639×neg-mul-1_binary64
617×distribute-lft-in_binary64
453×unsub-neg_binary64
338×distribute-rgt-neg-out_binary64
Counts
46 → 28
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
031471
155450
2130450
3459450
42525450
54192450
65071450

prune14.0ms (0.7%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New27128
Fresh011
Picked011
Done000
Total27330
Error
0b
Counts
30 → 3
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (+.f64 y z) (neg.f64 z))
0.0b
(+.f64 (*.f64 x y) (*.f64 (-.f64 x 1) z))
1.3b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (+.f64 y z) (neg.f64 z))) (cbrt.f64 (fma.f64 x (+.f64 y z) (neg.f64 z)))) (cbrt.f64 (fma.f64 x (+.f64 y z) (neg.f64 z))))
Compiler

Compiled 372 to 104 computations (72% saved)

localize7.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

series11.0ms (0.5%)

Counts
2 → 48
Calls

2 calls:

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

rewrite10.0ms (0.5%)

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

2 calls:

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

simplify51.0ms (2.6%)

Algorithm
egg-herbie
Rules
654×associate-+l+_binary64
334×associate-*l*_binary64
269×fma-def_binary64
262×distribute-rgt-in_binary64
249×fma-neg_binary64
Counts
88 → 75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082898
1212859
2647859
32167856
44970856

prune33.0ms (1.7%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New74175
Fresh101
Picked101
Done011
Total76278
Error
0b
Counts
78 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (+.f64 y z) (neg.f64 z))
0.0b
(fma.f64 x y (*.f64 (-.f64 x 1) z))
Compiler

Compiled 1109 to 509 computations (54.1% saved)

localize7.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

series7.0ms (0.4%)

Counts
1 → 36
Calls

1 calls:

7.0ms
(fma.f64 x y (*.f64 (-.f64 x 1) z))

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 y (*.f64 (-.f64 x 1) z))

simplify38.0ms (1.9%)

Algorithm
egg-herbie
Rules
776×associate-+r+_binary64
747×associate-+l+_binary64
309×distribute-rgt-in_binary64
305×distribute-lft-in_binary64
205×distribute-lft-neg-out_binary64
Counts
46 → 28
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
030480
155447
2108447
3319447
41376447
55195447

prune32.0ms (1.6%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New70070
Fresh000
Picked011
Done011
Total70272
Error
0b
Counts
72 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (+.f64 y z) (neg.f64 z))
0.0b
(fma.f64 x y (*.f64 (-.f64 x 1) z))
Compiler

Compiled 901 to 445 computations (50.6% saved)

regimes61.0ms (3%)

Accuracy

Total 0.0b remaining (82.4%)

Threshold costs 0.0b (82.4%)

Counts
13 → 1
Compiler

Compiled 568 to 334 computations (41.2% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
11411
21511
31311

end42.0ms (2.1%)

Compiler

Compiled 43 to 27 computations (37.2% saved)

Profiling

Loading profile data...