Details

Time bar (total: 3.6s)

analyze421.0ms (11.8%)

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
34.3%62.4%3.3%9
42.1%49.9%7.9%10
53.8%37.8%8.3%11
56.2%33%10.9%12
60.3%25.6%14.1%13
66.4%19.4%14.2%14
Compiler

Compiled 13 to 10 computations (23.1% saved)

sample1.1s (30.7%)

Results
832.0ms8256×body128valid
75.0ms786×body128invalid
Compiler

Compiled 38 to 29 computations (23.7% saved)

simplify40.0ms (1.1%)

Algorithm
egg-herbie
Rules
710×fma-def_binary64
419×fma-neg_binary64
210×distribute-rgt-in_binary64
164×distribute-lft-in_binary64
139×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0913
12013
24711
313211
433411
564011
696511
7125411
8126211
9126211
10119111

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 42 to 27 computations (35.7% saved)

localize10.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
3.0b
(*.f64 x (-.f64 (fma.f64 y z 1) z))

series10.0ms (0.3%)

Counts
1 → 36
Calls

1 calls:

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

rewrite10.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
21×add-sqr-sqrt_binary64
19×*-un-lft-identity_binary64
18×prod-diff_binary64
17×add-cube-cbrt_binary64
14×distribute-lft-in_binary64
Counts
1 → 52
Calls

1 calls:

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

simplify96.0ms (2.7%)

Algorithm
egg-herbie
Rules
412×unsub-neg_binary64
396×exp-prod_binary64
359×distribute-rgt-in_binary64
334×distribute-lft-in_binary64
331×fma-def_binary64
Counts
88 → 75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01341249
12251167
27841113
323581057
439411057
549821057
649091057

prune56.0ms (1.6%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New70575
Fresh000
Picked011
Done000
Total70676
Error
0.0b
Counts
76 → 6
Alt Table
StatusErrorProgram
17.9b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
34.7b
(*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 (fma.f64 y z 1) z)))
3.3b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
32.3b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
4.6b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
1.4b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
Compiler

Compiled 1619 to 773 computations (52.3% saved)

localize5.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series27.0ms (0.7%)

Counts
3 → 60
Calls

3 calls:

10.0ms
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
9.0ms
(*.f64 y (*.f64 z x))
7.0ms
(+.f64 (*.f64 y (*.f64 z x)) x)

rewrite18.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
10×add-log-exp_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
Counts
3 → 56
Calls

3 calls:

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

simplify81.0ms (2.3%)

Algorithm
egg-herbie
Rules
816×fma-neg_binary64
502×fma-def_binary64
318×cancel-sign-sub-inv_binary64
279×distribute-rgt-in_binary64
247×distribute-lft-in_binary64
Counts
116 → 103
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081397
12851233
28961196
327521195
444871195
549631195

prune58.0ms (1.6%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1021103
Fresh134
Picked011
Done011
Total1036109
Error
0b
Counts
109 → 6
Alt Table
StatusErrorProgram
17.9b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
34.7b
(*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 (fma.f64 y z 1) z)))
32.8b
(*.f64 (-.f64 (*.f64 y x) x) z)
3.3b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
32.3b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
1.4b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
Compiler

Compiled 1883 to 525 computations (72.1% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
0.1b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
2.4b
(sqrt.f64 (-.f64 (fma.f64 y z 1) z))

series150.0ms (4.2%)

Counts
3 → 64
Calls

3 calls:

87.0ms
(*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
53.0ms
(sqrt.f64 (-.f64 (fma.f64 y z 1) z))
10.0ms
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))

rewrite25.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
20×add-sqr-sqrt_binary64
16×associate-*r*_binary64
16×sqrt-prod_binary64
16×sqrt-div_binary64
15×*-un-lft-identity_binary64
Counts
3 → 80
Calls

3 calls:

9.0ms
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
5.0ms
(*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
5.0ms
(sqrt.f64 (-.f64 (fma.f64 y z 1) z))

simplify106.0ms (3%)

Algorithm
egg-herbie
Rules
474×distribute-rgt-in_binary64
460×distribute-lft-in_binary64
382×cancel-sign-sub-inv_binary64
324×associate-*l*_binary64
306×fma-neg_binary64
Counts
144 → 161
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02242879
16362716
221912674
348582664
450322664

prune158.0ms (4.4%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New2040204
Fresh033
Picked011
Done022
Total2046210
Error
0b
Counts
210 → 6
Alt Table
StatusErrorProgram
17.9b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
34.7b
(*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 (fma.f64 y z 1) z)))
32.8b
(*.f64 (-.f64 (*.f64 y x) x) z)
3.3b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
32.3b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
1.4b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
Compiler

Compiled 5998 to 3748 computations (37.5% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))
0.3b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
3.0b
(*.f64 x (-.f64 (fma.f64 y z 1) z))

series436.0ms (12.2%)

Counts
2 → 40
Calls

2 calls:

270.0ms
(sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))
165.0ms
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))

rewrite25.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
54×pow1_binary64
30×sqrt-pow1_binary64
21×pow-prod-down_binary64
16×associate-*r/_binary64
14×sqrt-div_binary64
Counts
2 → 74
Calls

2 calls:

13.0ms
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
6.0ms
(sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))

simplify84.0ms (2.3%)

Algorithm
egg-herbie
Rules
756×fma-def_binary64
583×fma-neg_binary64
392×distribute-rgt-in_binary64
366×distribute-lft-in_binary64
227×cancel-sign-sub-inv_binary64
Counts
114 → 119
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01662161
14131985
214871844
346521842
451181842

prune196.0ms (5.5%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New3070307
Fresh022
Picked011
Done033
Total3076313
Error
0b
Counts
313 → 6
Alt Table
StatusErrorProgram
17.9b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
34.7b
(*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (-.f64 (fma.f64 y z 1) z)))
32.8b
(*.f64 (-.f64 (*.f64 y x) x) z)
3.3b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
32.3b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
1.4b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
Compiler

Compiled 9112 to 5066 computations (44.4% saved)

regimes323.0ms (9.1%)

Accuracy

Total 0.3b remaining (96.6%)

Threshold costs 0.3b (96.6%)

Counts
37 → 3
Compiler

Compiled 4293 to 2819 computations (34.3% saved)

bsearch29.0ms (0.8%)

Steps
ItersRangePoint
3
1.0381680177371557e-75
3.300973252377263e-73
1.599520831582608e-73
8
-3.829701417174297e+87
-8.680008759409105e+83
-8.795145312110055e+83
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
01851
12851
23851
34451
44851
54951
64851

end90.0ms (2.5%)

Compiler

Compiled 170 to 88 computations (48.2% saved)

Profiling

Loading profile data...