Details

Time bar (total: 3.0s)

analyze519.0ms (17.1%)

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
40.6%56.9%2.5%9
46%49.5%4.4%10
50.3%44.9%4.8%11
60.3%30.5%9.2%12
62.9%25.7%11.4%13
65.2%23.2%11.7%14
Compiler

Compiled 17 to 13 computations (23.5% saved)

sample1.1s (37.2%)

Results
958.0ms8256×body128valid
121.0ms1017×body128invalid
Compiler

Compiled 50 to 38 computations (24% saved)

simplify19.0ms (0.6%)

Algorithm
egg-herbie
Rules
888×fma-def_binary64
608×associate-/l*_binary64
410×fma-neg_binary64
310×div-sub_binary64
285×associate-/r/_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01319
12517
25515
314215
434114
575911
6208911
Stop Event
node limit
Counts
1 → 2

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.2b
(fma.f64 (/.f64 4 y) (-.f64 x z) 2)
0.0b
(+.f64 1 (/.f64 (*.f64 4 (-.f64 (+.f64 x (*.f64 y 1/4)) z)) y))
Compiler

Compiled 78 to 57 computations (26.9% saved)

localize8.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

series29.0ms (1%)

Counts
2 → 72
Calls

2 calls:

15.0ms
(+.f64 1 (/.f64 (*.f64 4 (-.f64 (+.f64 x (*.f64 y 1/4)) z)) y))
14.0ms
(/.f64 (*.f64 4 (-.f64 (+.f64 x (*.f64 y 1/4)) z)) y)

rewrite56.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
261×expm1-udef_binary64
261×log1p-udef_binary64
142×add-sqr-sqrt_binary64
142×log1p-expm1-u_binary64
142×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01335
129631
2420731
Stop Event
node limit
Counts
2 → 75
Calls

2 calls:

55.0ms
(+.f64 1 (/.f64 (*.f64 4 (-.f64 (+.f64 x (*.f64 y 1/4)) z)) y))
55.0ms
(/.f64 (*.f64 4 (-.f64 (+.f64 x (*.f64 y 1/4)) z)) y)

simplify36.0ms (1.2%)

Algorithm
egg-herbie
Rules
559×times-frac_binary64
532×associate-/r*_binary64
474×fma-neg_binary64
470×associate-/l*_binary64
203×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
037824
191824
2172711
3305706
4599706
51497706
Stop Event
node limit
Counts
147 → 97

prune68.0ms (2.2%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New95297
Fresh101
Picked101
Done000
Total97299
Error
0b
Counts
99 → 2
Alt Table
StatusErrorProgram
24.3b
(cbrt.f64 (pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3))
0.0b
(-.f64 (+.f64 (*.f64 4 (/.f64 x y)) 2) (*.f64 4 (/.f64 z y)))
Compiler

Compiled 1777 to 1245 computations (29.9% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 4 (/.f64 x y)) 2) (*.f64 4 (/.f64 z y)))
0.0b
(*.f64 4 (/.f64 x y))
0.0b
(*.f64 4 (/.f64 z y))

series29.0ms (1%)

Counts
3 → 27
Calls

3 calls:

16.0ms
(-.f64 (+.f64 (*.f64 4 (/.f64 x y)) 2) (*.f64 4 (/.f64 z y)))
7.0ms
(*.f64 4 (/.f64 z y))
6.0ms
(*.f64 4 (/.f64 x y))

rewrite58.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
252×expm1-udef_binary64
252×log1p-udef_binary64
241×fma-neg_binary64
139×add-sqr-sqrt_binary64
135×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
128031
2396431
Stop Event
node limit
Counts
3 → 99
Calls

3 calls:

56.0ms
(-.f64 (+.f64 (*.f64 4 (/.f64 x y)) 2) (*.f64 4 (/.f64 z y)))
56.0ms
(*.f64 4 (/.f64 x y))
56.0ms
(*.f64 4 (/.f64 z y))

simplify59.0ms (1.9%)

Algorithm
egg-herbie
Rules
869×fma-neg_binary64
499×fma-def_binary64
301×cancel-sign-sub-inv_binary64
119×distribute-rgt-in_binary64
86×div-sub_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
020292
145292
290290
3155254
4281254
5473254
6786254
71199254
81772254
92700254
103288254
113334254
123348254
133353254
143357254
Stop Event
saturated
Counts
126 → 112

prune70.0ms (2.3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1120112
Fresh011
Picked011
Done000
Total1122114
Error
0b
Counts
114 → 2
Alt Table
StatusErrorProgram
24.3b
(cbrt.f64 (pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3))
0.0b
(-.f64 (+.f64 (*.f64 4 (/.f64 x y)) 2) (*.f64 4 (/.f64 z y)))
Compiler

Compiled 2115 to 1324 computations (37.4% saved)

localize11.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1)
0.0b
(/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)
0.2b
(pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3)
22.9b
(cbrt.f64 (pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3))

series82.0ms (2.7%)

Counts
4 → 144
Calls

4 calls:

37.0ms
(pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3)
17.0ms
(cbrt.f64 (pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3))
16.0ms
(+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1)
11.0ms
(/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)

rewrite110.0ms (3.6%)

Algorithm
batch-egg-rewrite
Rules
877×prod-diff_binary64
289×egg-rr
147×log1p-expm1-u_binary64
147×expm1-log1p-u_binary64
145×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01559
132759
2404359
Stop Event
node limit
Counts
4 → 289
Calls

4 calls:

102.0ms
(+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1)
102.0ms
(/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)
101.0ms
(pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3)
101.0ms
(cbrt.f64 (pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3))

simplify68.0ms (2.2%)

Algorithm
egg-herbie
Rules
555×fma-def_binary64
457×times-frac_binary64
339×associate-/l*_binary64
329×cancel-sign-sub-inv_binary64
250×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01253475
14793453
217043060
Stop Event
node limit
Counts
433 → 317

prune324.0ms (10.7%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New3170317
Fresh000
Picked011
Done011
Total3172319
Error
0b
Counts
319 → 2
Alt Table
StatusErrorProgram
24.3b
(cbrt.f64 (pow.f64 (+.f64 (*.f64 4 (/.f64 (-.f64 (fma.f64 y 1/4 x) z) y)) 1) 3))
0.0b
(-.f64 (+.f64 (*.f64 4 (/.f64 x y)) 2) (*.f64 4 (/.f64 z y)))
Compiler

Compiled 12459 to 7032 computations (43.6% saved)

regimes292.0ms (9.7%)

Accuracy

Total 0.0b remaining (84%)

Threshold costs 0.0b (84%)

Counts
61 → 1
Compiler

Compiled 4008 to 3142 computations (21.6% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01217
11417
Stop Event
saturated

end50.0ms (1.7%)

Compiler

Compiled 64 to 48 computations (25% saved)

Profiling

Loading profile data...