Details

Time bar (total: 3.2s)

analyze450.0ms (13.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
31.2%68.6%0.1%8
37.4%59.3%3.3%9
45.2%48.4%6.4%10
56.9%36.7%6.4%11
60.5%30.8%8.7%12
64.2%24.8%11.1%13
70.3%18.6%11.1%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample1.0s (32%)

Symmetry

(sort y z)

Results
911.0ms8256×body128valid
54.0ms608×body128invalid
Compiler

Compiled 32 to 23 computations (28.1% saved)

simplify23.0ms (0.7%)

Algorithm
egg-herbie
Rules
419×fma-def_binary64
121×fma-neg_binary64
46×distribute-rgt-in_binary64
45×associate-*r*_binary64
43×associate-*l*_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11710
23210
37310
417510
521610
629010
741110
843110
948110
1048410
1150410
1245310

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
5.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
5.1b
(*.f64 x (-.f64 1 (*.f64 y z)))
Compiler

Compiled 30 to 21 computations (30% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series12.0ms (0.4%)

Counts
2 → 42
Calls

2 calls:

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

rewrite9.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt_binary64
prod-diff_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
distribute-lft-in_binary64
Counts
2 → 52
Calls

2 calls:

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

simplify66.0ms (2%)

Algorithm
egg-herbie
Rules
900×fma-def_binary64
608×distribute-neg-out_binary64
601×unsub-neg_binary64
328×associate-*l*_binary64
264×*-commutative_binary64
Counts
94 → 78
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0811122
11631031
2520977
31456950
42828950
55227950

prune62.0ms (1.9%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New75378
Fresh000
Picked101
Done000
Total76379
Error
0.0b
Counts
79 → 3
Alt Table
StatusErrorProgram
4.7b
(-.f64 x (*.f64 y (*.f64 z x)))
15.8b
(/.f64 (*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))) (+.f64 1 (*.f64 y z)))
5.1b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x) (*.f64 (fma.f64 (neg.f64 z) y (*.f64 z y)) x))
Compiler

Compiled 1151 to 561 computations (51.3% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series17.0ms (0.5%)

Counts
2 → 18
Calls

2 calls:

9.0ms
(-.f64 x (*.f64 y (*.f64 z x)))
8.0ms
(*.f64 y (*.f64 z x))

rewrite8.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
Counts
2 → 40
Calls

2 calls:

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

simplify115.0ms (3.5%)

Algorithm
egg-herbie
Rules
721×fma-def_binary64
462×fma-neg_binary64
392×distribute-rgt-neg-in_binary64
378×distribute-lft-neg-in_binary64
300×distribute-rgt-in_binary64
Counts
58 → 55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
080682
1195637
2585609
31582608
44260608
54932608
64986608
74996608
84794608

prune31.0ms (1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New53255
Fresh112
Picked011
Done000
Total54458
Error
0.0b
Counts
58 → 4
Alt Table
StatusErrorProgram
5.1b
(-.f64 x (*.f64 (*.f64 y z) x))
4.7b
(-.f64 x (*.f64 y (*.f64 z x)))
15.8b
(/.f64 (*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))) (+.f64 1 (*.f64 y z)))
28.7b
(-.f64 x (*.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) (sqrt.f64 (*.f64 y (*.f64 z x)))))
Compiler

Compiled 838 to 275 computations (67.2% saved)

localize7.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series17.0ms (0.5%)

Counts
2 → 72
Calls

2 calls:

9.0ms
(-.f64 x (*.f64 (*.f64 y z) x))
8.0ms
(*.f64 (*.f64 y z) x)

rewrite10.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
Counts
2 → 41
Calls

2 calls:

4.0ms
(*.f64 (*.f64 y z) x)
3.0ms
(-.f64 x (*.f64 (*.f64 y z) x))

simplify72.0ms (2.2%)

Algorithm
egg-herbie
Rules
968×fma-def_binary64
524×fma-neg_binary64
417×distribute-rgt-neg-in_binary64
384×distribute-lft-neg-in_binary64
279×cancel-sign-sub-inv_binary64
Counts
113 → 68
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0811123
12001077
26921049
318091047
445831047
548191047

prune33.0ms (1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New68068
Fresh022
Picked011
Done011
Total68472
Error
0.0b
Counts
72 → 4
Alt Table
StatusErrorProgram
5.1b
(-.f64 x (*.f64 (*.f64 y z) x))
4.7b
(-.f64 x (*.f64 y (*.f64 z x)))
15.8b
(/.f64 (*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))) (+.f64 1 (*.f64 y z)))
28.7b
(-.f64 x (*.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) (sqrt.f64 (*.f64 y (*.f64 z x)))))
Compiler

Compiled 956 to 262 computations (72.6% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))
0.2b
(*.f64 (*.f64 y z) (*.f64 y z))
4.2b
(*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z))))
10.7b
(/.f64 (*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))) (+.f64 1 (*.f64 y z)))

series108.0ms (3.3%)

Counts
4 → 120
Calls

4 calls:

50.0ms
(/.f64 (*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))) (+.f64 1 (*.f64 y z)))
34.0ms
(*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z))))
12.0ms
(*.f64 (*.f64 y z) (*.f64 y z))
11.0ms
(-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))

rewrite27.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
45×pow1_binary64
23×add-cbrt-cube_binary64
23×add-exp-log_binary64
18×pow-prod-down_binary64
16×add-sqr-sqrt_binary64
Counts
4 → 119
Calls

4 calls:

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

simplify169.0ms (5.2%)

Algorithm
egg-herbie
Rules
612×fma-def_binary64
318×associate-*l/_binary64
241×associate-/r*_binary64
241×distribute-rgt-in_binary64
236×associate-/l/_binary64
Counts
239 → 189
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01624021
13953532
215273414
347203414
449993414
550003414
649023414

prune116.0ms (3.6%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1890189
Fresh011
Picked011
Done022
Total1894193
Error
0.0b
Counts
193 → 4
Alt Table
StatusErrorProgram
5.1b
(-.f64 x (*.f64 (*.f64 y z) x))
4.7b
(-.f64 x (*.f64 y (*.f64 z x)))
15.8b
(/.f64 (*.f64 x (-.f64 1 (*.f64 (*.f64 y z) (*.f64 y z)))) (+.f64 1 (*.f64 y z)))
28.7b
(-.f64 x (*.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) (sqrt.f64 (*.f64 y (*.f64 z x)))))
Compiler

Compiled 4674 to 1859 computations (60.2% saved)

regimes621.0ms (19.1%)

Accuracy

Total 0.2b remaining (84.2%)

Threshold costs 0.2b (84.2%)

Counts
56 → 3
Compiler

Compiled 5924 to 3930 computations (33.7% saved)

bsearch1.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
11×*-commutative_binary64
+-commutative_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02664
14664
26564
37464
47864
57964
67664

end206.0ms (6.4%)

Compiler

Compiled 242 to 119 computations (50.8% saved)

Profiling

Loading profile data...