Details

Time bar (total: 7.2s)

analyze611.0ms (8.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
6.2%93.6%0.2%8
25%74.9%0.2%9
28.1%71.7%0.2%10
29.6%70.2%0.2%11
53%46.8%0.2%12
71.3%28.5%0.2%13
71.7%28.1%0.2%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample38.0ms (0.5%)

Algorithm
intervals
Results
12.0ms256×body128valid
1.0ms13×body128invalid
Compiler

Compiled 43 to 27 computations (37.2% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
fma-def_binary64
+-commutative_binary64
*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01218
11818
22218
32218

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
27.6b
Counts
3 → 1
Alt Table
StatusErrorProgram
27.6b
(/.f64 (fma.f64 a c (*.f64 b d)) (fma.f64 c c (*.f64 d d)))
Compiler

Compiled 66 to 32 computations (51.5% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 c c (*.f64 d d))
0.3b
(fma.f64 a c (*.f64 b d))
27.2b
(/.f64 (fma.f64 a c (*.f64 b d)) (fma.f64 c c (*.f64 d d)))

series94.0ms (1.3%)

Counts
3 → 120
Calls

3 calls:

78.0ms
(/.f64 (fma.f64 a c (*.f64 b d)) (fma.f64 c c (*.f64 d d)))
8.0ms
(fma.f64 a c (*.f64 b d))
7.0ms
(fma.f64 c c (*.f64 d d))

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
3 → 49
Calls

3 calls:

2.0ms
(/.f64 (fma.f64 a c (*.f64 b d)) (fma.f64 c c (*.f64 d d)))
0.0ms
(fma.f64 a c (*.f64 b d))
0.0ms
(fma.f64 c c (*.f64 d d))

simplify75.0ms (1%)

Algorithm
egg-herbie
Rules
686×fma-def_binary64
410×associate-/l/_binary64
377×fma-neg_binary64
252×distribute-rgt-neg-in_binary64
251×distribute-lft-neg-in_binary64
Counts
169 → 117
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01022836
12052674
26112590
321632542
450542542

prune129.0ms (1.8%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New10710117
Fresh000
Picked101
Done000
Total10810118
Error
1.8b
Counts
118 → 10
Alt Table
StatusErrorProgram
40.9b
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 d b (*.f64 c a)) (fma.f64 d d (*.f64 c c))) 3))
41.6b
(*.f64 (/.f64 (sqrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)) (/.f64 (sqrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
27.6b
(/.f64 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)) (sqrt.f64 (fma.f64 c c (*.f64 d d))))
38.3b
(/.f64 a c)
32.4b
(fma.f64 a (/.f64 c (*.f64 d d)) (/.f64 b d))
19.2b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
34.9b
(/.f64 b d)
25.9b
(fma.f64 b (/.f64 d (fma.f64 d d (*.f64 c c))) (/.f64 (*.f64 c a) (fma.f64 d d (*.f64 c c))))
38.8b
(/.f64 (*.f64 d b) (fma.f64 d d (*.f64 c c)))
18.7b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
Compiler

Compiled 2725 to 590 computations (78.3% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
0.3b
(fma.f64 d b (*.f64 c a))
17.5b
(/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))

series213.0ms (2.9%)

Counts
3 → 144
Calls

3 calls:

107.0ms
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
98.0ms
(/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))
9.0ms
(fma.f64 d b (*.f64 c a))

rewrite21.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
42×add-sqr-sqrt_binary64
34×times-frac_binary64
27×*-un-lft-identity_binary64
27×add-exp-log_binary64
25×add-cube-cbrt_binary64
Counts
3 → 97
Calls

3 calls:

10.0ms
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
2.0ms
(/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))
0.0ms
(fma.f64 d b (*.f64 c a))

simplify129.0ms (1.8%)

Algorithm
egg-herbie
Rules
708×times-frac_binary64
275×fma-def_binary64
269×associate-/l/_binary64
266×distribute-rgt-in_binary64
261×fma-neg_binary64
Counts
241 → 222
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01845189
14924744
216784587
345964569
450104569

prune151.0ms (2.1%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2157222
Fresh819
Picked011
Done000
Total2239232
Error
0.2b
Counts
232 → 9
Alt Table
StatusErrorProgram
28.8b
(fma.f64 (/.f64 a d) (/.f64 c d) (/.f64 b d))
35.2b
(fma.f64 (/.f64 b c) (/.f64 d c) (/.f64 a c))
24.8b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 (hypot.f64 d c)) (cbrt.f64 (hypot.f64 d c)))) (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (cbrt.f64 (hypot.f64 d c))))
19.2b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
42.3b
(*.f64 (/.f64 1 (hypot.f64 d c)) (neg.f64 (fma.f64 (/.f64 c d) a b)))
42.5b
(*.f64 (/.f64 1 (hypot.f64 d c)) (fma.f64 (/.f64 c d) a b))
18.6b
(/.f64 (*.f64 1 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))) (hypot.f64 d c))
26.0b
(fma.f64 (/.f64 c (fma.f64 d d (*.f64 c c))) a (/.f64 (*.f64 d b) (fma.f64 d d (*.f64 c c))))
18.7b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
Compiler

Compiled 5778 to 1563 computations (72.9% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (*.f64 1 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))) (hypot.f64 d c))
0.3b
(fma.f64 d b (*.f64 c a))
17.5b
(/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))

series103.0ms (1.4%)

Counts
1 → 48
Calls

1 calls:

103.0ms
(/.f64 (*.f64 1 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))) (hypot.f64 d c))

rewrite7.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
15×add-exp-log_binary64
10×add-cbrt-cube_binary64
div-exp_binary64
cbrt-undiv_binary64
prod-exp_binary64
Counts
1 → 28
Calls

1 calls:

5.0ms
(/.f64 (*.f64 1 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))) (hypot.f64 d c))

simplify84.0ms (1.2%)

Algorithm
egg-herbie
Rules
658×fma-def_binary64
563×fma-neg_binary64
466×times-frac_binary64
352×associate-/l*_binary64
263×distribute-rgt-neg-in_binary64
Counts
76 → 64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0992092
12421844
27831742
329011724
447021688
551061688

prune120.0ms (1.7%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New1721173
Fresh167
Picked011
Done011
Total1739182
Error
0.2b
Counts
182 → 9
Alt Table
StatusErrorProgram
42.2b
(/.f64 (*.f64 1 (neg.f64 (fma.f64 (/.f64 c d) a b))) (hypot.f64 d c))
42.5b
(*.f64 (/.f64 1 (hypot.f64 d c)) (fma.f64 (/.f64 c d) a b))
28.8b
(fma.f64 (/.f64 a d) (/.f64 c d) (/.f64 b d))
35.2b
(fma.f64 (/.f64 b c) (/.f64 d c) (/.f64 a c))
24.8b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 (hypot.f64 d c)) (cbrt.f64 (hypot.f64 d c)))) (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (cbrt.f64 (hypot.f64 d c))))
19.2b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
18.6b
(/.f64 (*.f64 1 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))) (hypot.f64 d c))
26.0b
(fma.f64 (/.f64 c (fma.f64 d d (*.f64 c c))) a (/.f64 (*.f64 d b) (fma.f64 d d (*.f64 c c))))
18.7b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
Compiler

Compiled 4227 to 1289 computations (69.5% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
0.5b
(*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a))))
5.0b
(/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c))
18.0b
(cbrt.f64 (fma.f64 d b (*.f64 c a)))

series441.0ms (6.1%)

Counts
4 → 192
Calls

4 calls:

171.0ms
(/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c))
107.0ms
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
91.0ms
(*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a))))
71.0ms
(cbrt.f64 (fma.f64 d b (*.f64 c a)))

rewrite37.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
54×add-sqr-sqrt_binary64
32×add-exp-log_binary64
31×times-frac_binary64
30×*-un-lft-identity_binary64
30×cbrt-prod_binary64
Counts
4 → 139
Calls

4 calls:

10.0ms
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
6.0ms
(*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a))))
4.0ms
(/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c))
1.0ms
(cbrt.f64 (fma.f64 d b (*.f64 c a)))

simplify368.0ms (5.1%)

Algorithm
egg-herbie
Rules
597×fma-def_binary64
378×*-commutative_binary64
286×cancel-sign-sub-inv_binary64
196×sub-neg_binary64
134×fma-neg_binary64
Counts
331 → 451
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
093718197
1323716442
2472616086
3500016086
4496416086

prune525.0ms (7.2%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New6390639
Fresh066
Picked011
Done022
Total6399648
Error
0.2b
Counts
648 → 9
Alt Table
StatusErrorProgram
42.2b
(/.f64 (*.f64 1 (neg.f64 (fma.f64 (/.f64 c d) a b))) (hypot.f64 d c))
42.5b
(*.f64 (/.f64 1 (hypot.f64 d c)) (fma.f64 (/.f64 c d) a b))
28.8b
(fma.f64 (/.f64 a d) (/.f64 c d) (/.f64 b d))
35.2b
(fma.f64 (/.f64 b c) (/.f64 d c) (/.f64 a c))
24.8b
(*.f64 (/.f64 (/.f64 1 (*.f64 (cbrt.f64 (hypot.f64 d c)) (cbrt.f64 (hypot.f64 d c)))) (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (cbrt.f64 (hypot.f64 d c))))
19.2b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (cbrt.f64 (fma.f64 d b (*.f64 c a)))) (hypot.f64 d c)) (/.f64 (cbrt.f64 (fma.f64 d b (*.f64 c a))) (hypot.f64 d c)))
18.6b
(/.f64 (*.f64 1 (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c))) (hypot.f64 d c))
26.0b
(fma.f64 (/.f64 c (fma.f64 d d (*.f64 c c))) a (/.f64 (*.f64 d b) (fma.f64 d d (*.f64 c c))))
18.7b
(*.f64 (/.f64 1 (hypot.f64 d c)) (/.f64 (fma.f64 d b (*.f64 c a)) (hypot.f64 d c)))
Compiler

Compiled 37704 to 14392 computations (61.8% saved)

regimes3.1s (43.2%)

Accuracy

Total 10.0b remaining (98.5%)

Threshold costs 0b (0%)

Counts
163 → 5
Compiler

Compiled 17538 to 9344 computations (46.7% saved)

bsearch74.0ms (1%)

Steps
ItersRangePoint
9
4.000848255003141e+114
6.70304819586867e+123
1.5945253184501813e+119
8
5.942567891796037e-131
3.3981579973716382e-127
5.0503981640593735e-129
9
-1.0809643918353936e-146
-9.428601981592874e-155
-4.914157784902541e-154
7
-3.5031277533538224e+81
-2.7252440438352698e+79
-1.5835790079768928e+81
Compiler

Compiled 5 to 4 computations (20% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
*-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038110
149110
254110
357110
459110
560110
658110

end1.0ms (0%)

Compiler

Compiled 80 to 34 computations (57.5% saved)

sample835.0ms (11.5%)

Algorithm
intervals
Results
396.0ms8000×body128valid
25.0ms494×body128invalid
Compiler

Compiled 295 to 145 computations (50.8% saved)

Profiling

Loading profile data...