Details

Time bar (total: 3.5s)

analyze757.0ms (21.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
18.7%81.1%0.1%8
34.3%65.5%0.1%9
39%60.8%0.1%10
41.3%58.5%0.1%11
52.7%47.2%0.1%12
54%45.7%0.2%13
55.3%43.8%0.9%14
Compiler

Compiled 19 to 10 computations (47.4% saved)

sample1.8s (50.2%)

Results
676.0ms6025×body128valid
268.0ms839×body1024valid
186.0ms480×body2048valid
147.0ms1380×body128invalid
141.0ms563×body512valid
85.0ms240×body1024invalid
80.0ms314×body512invalid
67.0ms349×body256valid
44.0ms220×body256invalid
Compiler

Compiled 56 to 29 computations (48.2% saved)

simplify253.0ms (7.1%)

Algorithm
egg-herbie
Rules
7175×fma-neg_binary64
753×unsub-neg_binary64
515×distribute-lft-out_binary64
498×distribute-lft-out--_binary64
472×*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01022
12710
2807
32067
45657
518257
621617
722897
824917
926047
1026497
1139047
1233807
1335847
1435847
1539967
1642027
1742027
1842027
1943047
2043047
21110327

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
(*.f64 y (-.f64 x z))
18.3b
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
Compiler

Compiled 75 to 39 computations (48% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

series6.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

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

rewrite9.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
21×add-sqr-sqrt_binary64
19×*-un-lft-identity_binary64
18×prod-diff_binary64
17×add-cube-cbrt_binary64
13×distribute-lft-in_binary64
Counts
1 → 50
Calls

1 calls:

5.0ms
(*.f64 y (-.f64 x z))

simplify91.0ms (2.6%)

Algorithm
egg-herbie
Rules
626×fma-def_binary64
422×unsub-neg_binary64
281×unswap-sqr_binary64
277×*-commutative_binary64
231×neg-mul-1_binary64
Counts
86 → 67
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0117869
1190803
2577749
31458695
43029695
54852695
65000695
74766695

prune33.0ms (0.9%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New64367
Fresh101
Picked011
Done000
Total65469
Error
0b
Counts
69 → 4
Alt Table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y x) (*.f64 y z))
0.0b
(*.f64 y (-.f64 x z))
27.9b
(/.f64 (*.f64 y (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 x z))
32.5b
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))
Compiler

Compiled 1087 to 310 computations (71.5% saved)

localize6.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

series7.0ms (0.2%)

Counts
1 → 18
Calls

1 calls:

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

rewrite3.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-log-exp_binary64
distribute-lft-out--_binary64
cancel-sign-sub-inv_binary64
flip--_binary64
sub-neg_binary64
Counts
1 → 17
Calls

1 calls:

2.0ms
(-.f64 (*.f64 y x) (*.f64 y z))

simplify79.0ms (2.2%)

Algorithm
egg-herbie
Rules
791×unsub-neg_binary64
633×fma-def_binary64
541×distribute-rgt-in_binary64
482×distribute-lft-in_binary64
320×times-frac_binary64
Counts
35 → 35
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045332
1121314
2415307
31268304
43520304
54176304
64949304
74865304

prune14.0ms (0.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New35035
Fresh022
Picked011
Done011
Total35439
Error
0b
Counts
39 → 4
Alt Table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y x) (*.f64 y z))
0.0b
(*.f64 y (-.f64 x z))
27.9b
(/.f64 (*.f64 y (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 x z))
32.5b
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))
Compiler

Compiled 469 to 145 computations (69.1% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
2.3b
(-.f64 (*.f64 x x) (*.f64 z z))
8.8b
(*.f64 y (-.f64 (*.f64 x x) (*.f64 z z)))
17.6b
(/.f64 (*.f64 y (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 x z))

series54.0ms (1.5%)

Counts
3 → 96
Calls

3 calls:

29.0ms
(/.f64 (*.f64 y (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 x z))
20.0ms
(*.f64 y (-.f64 (*.f64 x x) (*.f64 z z)))
6.0ms
(-.f64 (*.f64 x x) (*.f64 z z))

rewrite18.0ms (0.5%)

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

3 calls:

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

simplify92.0ms (2.6%)

Algorithm
egg-herbie
Rules
755×times-frac_binary64
387×distribute-rgt-in_binary64
370×distribute-lft-in_binary64
297×fma-def_binary64
204×exp-prod_binary64
Counts
171 → 117
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01332767
13352532
213001968
346021966
449621966

prune41.0ms (1.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1170117
Fresh011
Picked011
Done022
Total1174121
Error
0b
Counts
121 → 4
Alt Table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y x) (*.f64 y z))
0.0b
(*.f64 y (-.f64 x z))
27.9b
(/.f64 (*.f64 y (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 x z))
32.5b
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))
Compiler

Compiled 2219 to 476 computations (78.5% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))
0.2b
(*.f64 (sqrt.f64 y) (-.f64 x z))

series25.0ms (0.7%)

Counts
2 → 56
Calls

2 calls:

16.0ms
(*.f64 (sqrt.f64 y) (-.f64 x z))
9.0ms
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))

rewrite29.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
65×distribute-lft-in_binary64
65×distribute-rgt-in_binary64
55×add-sqr-sqrt_binary64
54×prod-diff_binary64
51×*-un-lft-identity_binary64
Counts
2 → 131
Calls

2 calls:

8.0ms
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))
6.0ms
(*.f64 (sqrt.f64 y) (-.f64 x z))

simplify86.0ms (2.4%)

Algorithm
egg-herbie
Rules
390×distribute-lft-neg-out_binary64
384×distribute-rgt-in_binary64
380×distribute-rgt-neg-out_binary64
365×distribute-lft-in_binary64
331×*-commutative_binary64
Counts
187 → 158
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02122353
12862176
29492014
327341744
448991744

prune52.0ms (1.5%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1580158
Fresh000
Picked011
Done033
Total1584162
Error
0b
Counts
162 → 4
Alt Table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y x) (*.f64 y z))
0.0b
(*.f64 y (-.f64 x z))
27.9b
(/.f64 (*.f64 y (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 x z))
32.5b
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 x z)))
Compiler

Compiled 3491 to 736 computations (78.9% saved)

regimes46.0ms (1.3%)

Accuracy

Total 0.0b remaining (76.1%)

Threshold costs 0.0b (76.1%)

Counts
12 → 1
Compiler

Compiled 664 to 372 computations (44% saved)

simplify2.0ms (0.1%)

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
0710
11410
22410
33010
43410
53510
63510

end45.0ms (1.3%)

Compiler

Compiled 66 to 39 computations (40.9% saved)

Profiling

Loading profile data...