Details

Time bar (total: 3.0s)

analyze544.0ms (18%)

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
0%81.1%18.9%7
6.2%74.9%18.9%8
9.4%65.5%25.1%9
15.6%48.4%36%10
20.3%43.1%36.6%11
22.6%36%41.4%12
27.1%25.1%47.8%13
29.5%22.5%48%14
Compiler

Compiled 14 to 9 computations (35.7% saved)

sample1.4s (46.7%)

Results
891.0ms8256×body128valid
265.0ms2681×body128invalid
Compiler

Compiled 41 to 26 computations (36.6% saved)

simplify192.0ms (6.3%)

Algorithm
egg-herbie
Rules
767×unsub-neg_binary64
741×*-commutative_binary64
699×fma-def_binary64
598×fma-neg_binary64
465×distribute-neg-out_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0915
11915
22915
35715
411815
527815
652915
7100715
8178115
9258515
10283415
11314115
12337115
13348515
14348515
15444415
16428415
17460415
18460415
19510315

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 39 to 24 computations (38.5% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series49.0ms (1.6%)

Counts
3 → 84
Calls

3 calls:

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

rewrite135.0ms (4.5%)

Algorithm
batch-egg-rewrite
Rules
665×prod-diff_binary64
465×fma-udef_binary64
406×fma-def_binary64
257×fma-neg_binary64
227×egg-rr
Counts
3 → 227
Calls

3 calls:

127.0ms
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
127.0ms
(-.f64 (*.f64 y y) (*.f64 z z))
127.0ms
(sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0937
119637
2236735
3478935
4478235
5493835
000
100

simplify82.0ms (2.7%)

Algorithm
egg-herbie
Rules
719×associate-/l*_binary64
591×associate-/r*_binary64
472×fma-def_binary64
305×fma-neg_binary64
264×cancel-sign-sub-inv_binary64
Counts
311 → 311
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01271894
14291872
214911838
348021838
450971838

prune147.0ms (4.9%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New3083311
Fresh000
Picked011
Done000
Total3084312
Error
0.2b
Counts
312 → 4
Alt Table
StatusErrorProgram
32.9b
(*.f64 x (*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z))))
24.9b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.3b
(*.f64 x (neg.f64 y))
30.2b
(*.f64 x y)
Compiler

Compiled 6799 to 2654 computations (61% saved)

localize6.0ms (0.2%)

prune2.0ms (0.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New000
Fresh022
Picked011
Done011
Total044
Error
0.2b
Counts
4 → 4
Alt Table
StatusErrorProgram
32.9b
(*.f64 x (*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z))))
24.9b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.3b
(*.f64 x (neg.f64 y))
30.2b
(*.f64 x y)
Compiler

Compiled 60 to 39 computations (35% saved)

localize2.0ms (0.1%)

prune2.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New000
Fresh011
Picked011
Done022
Total044
Error
0.2b
Counts
4 → 4
Alt Table
StatusErrorProgram
32.9b
(*.f64 x (*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z))))
24.9b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.3b
(*.f64 x (neg.f64 y))
30.2b
(*.f64 x y)
Compiler

Compiled 54 to 35 computations (35.2% saved)

localize8.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 y z))
0.2b
(*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z)))

series30.0ms (1%)

Counts
2 → 28
Calls

2 calls:

15.0ms
(sqrt.f64 (+.f64 y z))
15.0ms
(*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z)))

rewrite57.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
868×log1p-expm1-u_binary64
868×expm1-log1p-u_binary64
534×prod-diff_binary64
86×add-sqr-sqrt_binary64
81×add-log-exp_binary64
Counts
2 → 44
Calls

2 calls:

56.0ms
(sqrt.f64 (+.f64 y z))
56.0ms
(*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
117318
2219018
3635618
000
100

simplify55.0ms (1.8%)

Algorithm
egg-herbie
Rules
685×times-frac_binary64
591×fma-neg_binary64
322×fma-def_binary64
319×associate-/r*_binary64
311×associate-/l*_binary64
Counts
72 → 89
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0104805
1308789
2978761
34715760
45184760

prune42.0ms (1.4%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New89089
Fresh000
Picked011
Done033
Total89493
Error
0.2b
Counts
93 → 4
Alt Table
StatusErrorProgram
32.9b
(*.f64 x (*.f64 (sqrt.f64 (+.f64 y z)) (sqrt.f64 (-.f64 y z))))
24.9b
(*.f64 x (sqrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))))
28.3b
(*.f64 x (neg.f64 y))
30.2b
(*.f64 x y)
Compiler

Compiled 1778 to 974 computations (45.2% saved)

regimes160.0ms (5.3%)

Accuracy

Total 0.6b remaining (82.7%)

Threshold costs 0.6b (82.7%)

Counts
7 → 2
Compiler

Compiled 743 to 508 computations (31.6% saved)

bsearch38.0ms (1.2%)

Steps
ItersRangePoint
2
-3.772512675547034e-242
6.924855485400472e-277
-2.783211035485618e-291
Compiler

Compiled 4 to 3 computations (25% saved)

simplify3.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
01016
11716
22416
32916
43216
53316
63316

end49.0ms (1.6%)

Compiler

Compiled 68 to 44 computations (35.3% saved)

Profiling

Loading profile data...