Details

Time bar (total: 4.6s)

analyze401.0ms (8.7%)

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.2s (26.6%)

Results
965.0ms8256×body128valid
72.0ms730×body128invalid
Compiler

Compiled 38 to 29 computations (23.7% saved)

simplify42.0ms (0.9%)

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

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
3.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
3.8b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
3.8b
(*.f64 x (-.f64 1 (*.f64 (-.f64 1 y) z)))
Compiler

Compiled 66 to 45 computations (31.8% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 1 y) z)
3.6b
(*.f64 x (-.f64 1 (*.f64 (-.f64 1 y) z)))

series26.0ms (0.6%)

Counts
2 → 48
Calls

2 calls:

16.0ms
(*.f64 (-.f64 1 y) z)
9.0ms
(*.f64 x (-.f64 1 (*.f64 (-.f64 1 y) z)))

rewrite12.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt_binary64
11×*-un-lft-identity_binary64
associate-*l*_binary64
add-cube-cbrt_binary64
associate-*r*_binary64
Counts
2 → 57
Calls

2 calls:

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

simplify96.0ms (2.1%)

Algorithm
egg-herbie
Rules
394×unsub-neg_binary64
329×neg-mul-1_binary64
328×sub-neg_binary64
320×neg-sub0_binary64
310×*-commutative_binary64
Counts
105 → 101
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01201393
12531203
27511133
320831115
434351115
546981115
649191115

prune89.0ms (1.9%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New965101
Fresh101
Picked101
Done000
Total985103
Error
0.0b
Counts
103 → 5
Alt Table
StatusErrorProgram
14.8b
(*.f64 x (-.f64 1 (*.f64 (sqrt.f64 (-.f64 1 y)) (*.f64 (sqrt.f64 (-.f64 1 y)) z))))
2.0b
(+.f64 x (*.f64 (*.f64 z x) (-.f64 y 1)))
3.8b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z (-.f64 1 y)))) x) (*.f64 (fma.f64 (neg.f64 z) (-.f64 1 y) (*.f64 z (-.f64 1 y))) x))
12.5b
(*.f64 x (-.f64 1 (/.f64 (*.f64 z (-.f64 1 (*.f64 y y))) (+.f64 1 y))))
31.8b
(*.f64 x (-.f64 1 (*.f64 (+.f64 1 (sqrt.f64 y)) (*.f64 (-.f64 1 (sqrt.f64 y)) z))))
Compiler

Compiled 1747 to 1120 computations (35.9% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series20.0ms (0.4%)

Counts
2 → 72
Calls

2 calls:

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

rewrite19.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
36×prod-diff_binary64
36×add-sqr-sqrt_binary64
35×*-un-lft-identity_binary64
32×add-cube-cbrt_binary64
26×associate-+r+_binary64
Counts
2 → 94
Calls

2 calls:

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

simplify101.0ms (2.2%)

Algorithm
egg-herbie
Rules
727×fma-neg_binary64
429×distribute-rgt-in_binary64
423×fma-def_binary64
394×distribute-lft-in_binary64
347×*-commutative_binary64
Counts
166 → 148
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01282074
13311819
29981809
332051807
446701807
549901807

prune129.0ms (2.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1471148
Fresh314
Picked011
Done000
Total1503153
Error
0b
Counts
153 → 3
Alt Table
StatusErrorProgram
2.0b
(+.f64 x (*.f64 (*.f64 z x) (-.f64 y 1)))
3.8b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z (-.f64 1 y)))) x) (*.f64 (fma.f64 (neg.f64 z) (-.f64 1 y) (*.f64 z (-.f64 1 y))) x))
1.8b
(+.f64 x (*.f64 (-.f64 (*.f64 y x) x) z))
Compiler

Compiled 3067 to 1779 computations (42% saved)

localize5.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series24.0ms (0.5%)

Counts
3 → 75
Calls

3 calls:

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

rewrite13.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64
10×add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-log-exp_binary64
add-cbrt-cube_binary64
Counts
3 → 60
Calls

3 calls:

5.0ms
(*.f64 (-.f64 (*.f64 y x) x) z)
3.0ms
(+.f64 x (*.f64 (-.f64 (*.f64 y x) x) z))
3.0ms
(-.f64 (*.f64 y x) x)

simplify72.0ms (1.6%)

Algorithm
egg-herbie
Rules
762×fma-def_binary64
737×fma-neg_binary64
392×distribute-rgt-in_binary64
372×distribute-lft-in_binary64
199×cancel-sign-sub-inv_binary64
Counts
135 → 120
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01281637
13231428
212341411
343081405
449801405

prune77.0ms (1.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1200120
Fresh011
Picked011
Done011
Total1203123
Error
0b
Counts
123 → 3
Alt Table
StatusErrorProgram
2.0b
(+.f64 x (*.f64 (*.f64 z x) (-.f64 y 1)))
3.8b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z (-.f64 1 y)))) x) (*.f64 (fma.f64 (neg.f64 z) (-.f64 1 y) (*.f64 z (-.f64 1 y))) x))
1.8b
(+.f64 x (*.f64 (-.f64 (*.f64 y x) x) z))
Compiler

Compiled 1847 to 691 computations (62.6% saved)

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 z (-.f64 1 y))
3.6b
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z (-.f64 1 y)))) x)
26.2b
(fma.f64 (neg.f64 z) (-.f64 1 y) (*.f64 z (-.f64 1 y)))

series23.0ms (0.5%)

Counts
3 → 84
Calls

3 calls:

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

rewrite12.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
28×add-sqr-sqrt_binary64
24×*-un-lft-identity_binary64
21×add-cube-cbrt_binary64
18×prod-diff_binary64
13×distribute-lft-in_binary64
Counts
3 → 81
Calls

3 calls:

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

simplify84.0ms (1.8%)

Algorithm
egg-herbie
Rules
641×unsub-neg_binary64
346×*-commutative_binary64
319×fma-def_binary64
315×exp-prod_binary64
308×associate-+r+_binary64
Counts
165 → 134
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01561703
12801423
28871296
320871296
436471296
549011296

prune181.0ms (3.9%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2040204
Fresh000
Picked011
Done022
Total2043207
Error
0b
Counts
207 → 3
Alt Table
StatusErrorProgram
2.0b
(+.f64 x (*.f64 (*.f64 z x) (-.f64 y 1)))
3.8b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z (-.f64 1 y)))) x) (*.f64 (fma.f64 (neg.f64 z) (-.f64 1 y) (*.f64 z (-.f64 1 y))) x))
1.8b
(+.f64 x (*.f64 (-.f64 (*.f64 y x) x) z))
Compiler

Compiled 6735 to 3888 computations (42.3% saved)

regimes1.8s (39.9%)

Accuracy

Total 0.3b remaining (95.4%)

Threshold costs 0.3b (95.4%)

Counts
148 → 3
Compiler

Compiled 20210 to 13769 computations (31.9% saved)

bsearch22.0ms (0.5%)

Steps
ItersRangePoint
6
2.1403540062738518e-97
7.731303432436667e-89
5.61320657470593e-89
3
-7.524550666313537e+38
-5.84567037087261e+25
-2.426846197592874e+27
Compiler

Compiled 4 to 3 computations (25% saved)

simplify4.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
02669
14569
25469
35969
46169
56069

end59.0ms (1.3%)

Compiler

Compiled 152 to 89 computations (41.4% saved)

Profiling

Loading profile data...