Details

Time bar (total: 3.1s)

analyze451.0ms (14.4%)

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
31.2%68.6%0.1%9
40.6%50.7%8.7%10
48.4%42.1%9.5%11
54.2%35.5%10.3%12
59.1%25.9%15%13
63.9%20.9%15.3%14
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample1.1s (34%)

Results
847.0ms8256×body128valid
59.0ms600×body128invalid
Compiler

Compiled 38 to 26 computations (31.6% saved)

simplify52.0ms (1.7%)

Algorithm
egg-herbie
Rules
782×fma-def_binary64
523×fma-neg_binary64
142×cancel-sign-sub-inv_binary64
122×distribute-rgt-in_binary64
106×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
11611
23611
37811
415411
526811
640411
763111
891111
9109211
10129111
11131411
12131611
13131611
14124311

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
Compiler

Compiled 42 to 25 computations (40.5% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series14.0ms (0.4%)

Counts
2 → 60
Calls

2 calls:

9.0ms
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
4.0ms
(*.f64 (-.f64 y x) 6)

rewrite49.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
847×log1p-expm1-u_binary64
847×expm1-log1p-u_binary64
433×prod-diff_binary64
88×add-sqr-sqrt_binary64
82×add-log-exp_binary64
Counts
2 → 44
Calls

2 calls:

48.0ms
(*.f64 (-.f64 y x) 6)
48.0ms
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
117118
2211218
3591918

simplify65.0ms (2.1%)

Algorithm
egg-herbie
Rules
742×fma-def_binary64
521×fma-neg_binary64
105×cancel-sign-sub-inv_binary64
96×associate-*l*_binary64
95×distribute-rgt-in_binary64
Counts
104 → 61
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
029681
183573
2180567
3367513
4635513
51001513
61279513
71320513
81324513
91324513
101251513

prune42.0ms (1.3%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New55661
Fresh000
Picked011
Done000
Total55762
Error
0.0b
Counts
62 → 7
Alt Table
StatusErrorProgram
31.6b
(fma.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z x)
0.2b
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
0.6b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) 3) z x)
0.1b
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
40.9b
(cbrt.f64 (pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x) 3))
1.4b
(*.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) 2))
0.1b
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
Compiler

Compiled 902 to 500 computations (44.6% saved)

localize13.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 6 (*.f64 y z)) x)
0.0b
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
0.2b
(*.f64 6 (*.f64 y z))
0.3b
(*.f64 6 (*.f64 z x))

series31.0ms (1%)

Counts
4 → 18
Calls

4 calls:

17.0ms
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
6.0ms
(+.f64 (*.f64 6 (*.f64 y z)) x)
4.0ms
(*.f64 6 (*.f64 z x))
4.0ms
(*.f64 6 (*.f64 y z))

rewrite86.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
670×fma-def_binary64
305×fma-neg_binary64
231×egg-rr
230×expm1-udef_binary64
230×log1p-udef_binary64
Counts
4 → 231
Calls

4 calls:

81.0ms
(+.f64 (*.f64 6 (*.f64 y z)) x)
81.0ms
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
81.0ms
(*.f64 6 (*.f64 y z))
81.0ms
(*.f64 6 (*.f64 z x))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01139
125139
2334137
3494137

simplify55.0ms (1.7%)

Algorithm
egg-herbie
Rules
663×fma-def_binary64
320×fma-neg_binary64
96×associate-*l*_binary64
82×associate-*r*_binary64
82×cancel-sign-sub-inv_binary64
Counts
249 → 240
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
025111
175111
2164105
3330105
4552105
5825105
61043105
71069105
81072105
91072105
10999105

prune198.0ms (6.3%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2373240
Fresh415
Picked011
Done011
Total2416247
Error
0b
Counts
247 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
0.4b
(fma.f64 y (*.f64 6 z) (-.f64 x (*.f64 6 (*.f64 z x))))
0.4b
(fma.f64 x (-.f64 1 (*.f64 6 z)) (*.f64 6 (*.f64 z y)))
1.4b
(*.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) 2))
0.1b
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
29.6b
(*.f64 (-.f64 (pow.f64 (fma.f64 6 (*.f64 z y) x) 2) (*.f64 36 (pow.f64 (*.f64 z x) 2))) (/.f64 1 (fma.f64 6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))))
Compiler

Compiled 5301 to 2698 computations (49.1% saved)

localize12.0ms (0.4%)

Local error

Found 3 expressions with local error:

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

series14.0ms (0.5%)

Counts
2 → 51
Calls

2 calls:

10.0ms
(fma.f64 y (*.f64 6 z) (-.f64 x (*.f64 6 (*.f64 z x))))
5.0ms
(-.f64 x (*.f64 6 (*.f64 z x)))

rewrite76.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
863×prod-diff_binary64
196×expm1-udef_binary64
196×log1p-udef_binary64
140×egg-rr
110×add-sqr-sqrt_binary64
Counts
2 → 140
Calls

2 calls:

73.0ms
(-.f64 x (*.f64 6 (*.f64 z x)))
73.0ms
(fma.f64 y (*.f64 6 z) (-.f64 x (*.f64 6 (*.f64 z x))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
121627
2267527
3495027

simplify74.0ms (2.4%)

Algorithm
egg-herbie
Rules
732×fma-def_binary64
539×fma-neg_binary64
105×cancel-sign-sub-inv_binary64
98×associate-*l*_binary64
97×distribute-rgt-in_binary64
Counts
191 → 153
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
029666
184558
2179528
3380474
4642474
51011474
61279474
71320474
81324474
91324474
101251474

prune142.0ms (4.5%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New1670167
Fresh033
Picked011
Done022
Total1676173
Error
0b
Counts
173 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
0.4b
(fma.f64 y (*.f64 6 z) (-.f64 x (*.f64 6 (*.f64 z x))))
0.4b
(fma.f64 x (-.f64 1 (*.f64 6 z)) (*.f64 6 (*.f64 z y)))
1.4b
(*.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) 2))
0.1b
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
29.6b
(*.f64 (-.f64 (pow.f64 (fma.f64 6 (*.f64 z y) x) 2) (*.f64 36 (pow.f64 (*.f64 z x) 2))) (/.f64 1 (fma.f64 6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))))
Compiler

Compiled 4665 to 2416 computations (48.2% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series18.0ms (0.6%)

Counts
3 → 63
Calls

3 calls:

10.0ms
(fma.f64 x (-.f64 1 (*.f64 6 z)) (*.f64 6 (*.f64 z y)))
6.0ms
(*.f64 6 (*.f64 z y))
1.0ms
(-.f64 1 (*.f64 6 z))

rewrite64.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
602×prod-diff_binary64
541×log-prod_binary64
198×expm1-udef_binary64
197×log1p-udef_binary64
175×fma-def_binary64
Counts
3 → 95
Calls

3 calls:

58.0ms
(-.f64 1 (*.f64 6 z))
58.0ms
(*.f64 6 (*.f64 z y))
58.0ms
(fma.f64 x (-.f64 1 (*.f64 6 z)) (*.f64 6 (*.f64 z y)))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01131
122831
2263727
3543927

simplify73.0ms (2.3%)

Algorithm
egg-herbie
Rules
742×fma-def_binary64
521×fma-neg_binary64
105×cancel-sign-sub-inv_binary64
96×associate-*l*_binary64
95×distribute-rgt-in_binary64
Counts
158 → 109
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
029708
183600
2180594
3367540
4635540
51001540
61279540
71320540
81324540
91324540
101251540

prune86.0ms (2.8%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New1090109
Fresh022
Picked011
Done033
Total1096115
Error
0b
Counts
115 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (*.f64 6 (*.f64 y z)) x) (*.f64 6 (*.f64 z x)))
0.4b
(fma.f64 y (*.f64 6 z) (-.f64 x (*.f64 6 (*.f64 z x))))
0.4b
(fma.f64 x (-.f64 1 (*.f64 6 z)) (*.f64 6 (*.f64 z y)))
1.4b
(*.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) z x)) 2))
0.1b
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
29.6b
(*.f64 (-.f64 (pow.f64 (fma.f64 6 (*.f64 z y) x) 2) (*.f64 36 (pow.f64 (*.f64 z x) 2))) (/.f64 1 (fma.f64 6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))))
Compiler

Compiled 1877 to 1212 computations (35.4% saved)

regimes325.0ms (10.4%)

Accuracy

Total 0.2b remaining (93.5%)

Threshold costs 0.2b (93.5%)

Counts
85 → 1
Compiler

Compiled 5616 to 3814 computations (32.1% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01119
12219
23019
34019
44719
55219
65419
75319

end105.0ms (3.3%)

Compiler

Compiled 146 to 97 computations (33.6% saved)

Profiling

Loading profile data...