Details

Time bar (total: 6.3s)

analyze1.3s (20.2%)

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
6.2%93.6%0.2%9
9.4%90.4%0.2%10
22.2%77.6%0.2%11
40.4%59.5%0.2%12
47.4%52.4%0.2%13
55.3%44.5%0.2%14
Compiler

Compiled 22 to 15 computations (31.8% saved)

sample1.1s (17.9%)

Results
1.0s8256×body128valid
Compiler

Compiled 65 to 44 computations (32.3% saved)

simplify54.0ms (0.9%)

Algorithm
egg-herbie
Rules
508×fma-neg_binary64
504×associate-*l/_binary64
466×div-sub_binary64
450×cancel-sign-sub-inv_binary64
403×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01425
13025
27025
317722
448619
5108719
6253419
7443419
8515619

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
2.5b
Counts
3 → 2
Alt Table
StatusErrorProgram
10.5b
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
3.2b
(-.f64 x (/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))))
Compiler

Compiled 110 to 70 computations (36.4% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))
0.0b
(-.f64 x (/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))))
4.5b
(/.f64 (*.f64 y t) (*.f64 2 z))
5.7b
(/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z))))

series92.0ms (1.5%)

Counts
4 → 156
Calls

4 calls:

38.0ms
(-.f64 x (/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))))
23.0ms
(/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z))))
20.0ms
(/.f64 (*.f64 y t) (*.f64 2 z))
10.0ms
(-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))

rewrite50.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
121×add-sqr-sqrt_binary64
118×*-un-lft-identity_binary64
82×add-cube-cbrt_binary64
81×times-frac_binary64
78×prod-diff_binary64
Counts
4 → 203
Calls

4 calls:

12.0ms
(-.f64 x (/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))))
7.0ms
(/.f64 (*.f64 y t) (*.f64 2 z))
5.0ms
(/.f64 y (-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z))))
4.0ms
(-.f64 z (/.f64 (*.f64 y t) (*.f64 2 z)))

simplify1.9s (30.8%)

Algorithm
egg-herbie
Rules
335×fma-neg_binary64
273×exp-prod_binary64
232×times-frac_binary64
230×associate-/l*_binary64
215×associate-*r/_binary64
Counts
359 → 312
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
043511732
111549150
238147711
345847711
448607711

prune269.0ms (4.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New3102312
Fresh011
Picked101
Done000
Total3113314
Error
0b
Counts
314 → 3
Alt Table
StatusErrorProgram
10.5b
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
22.1b
(fma.f64 2 (/.f64 z t) x)
2.7b
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
Compiler

Compiled 11561 to 5777 computations (50% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (*.f64 (/.f64 y z) t))
0.0b
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
4.6b
(*.f64 (/.f64 y z) t)
5.7b
(/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t))))

series81.0ms (1.3%)

Counts
4 → 156
Calls

4 calls:

35.0ms
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
21.0ms
(/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t))))
12.0ms
(*.f64 1/2 (*.f64 (/.f64 y z) t))
12.0ms
(*.f64 (/.f64 y z) t)

rewrite36.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
75×add-sqr-sqrt_binary64
67×*-un-lft-identity_binary64
65×add-cube-cbrt_binary64
56×times-frac_binary64
45×prod-diff_binary64
Counts
4 → 167
Calls

4 calls:

8.0ms
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
5.0ms
(*.f64 (/.f64 y z) t)
5.0ms
(*.f64 1/2 (*.f64 (/.f64 y z) t))
3.0ms
(/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t))))

simplify229.0ms (3.6%)

Algorithm
egg-herbie
Rules
290×cancel-sign-sub-inv_binary64
258×fma-neg_binary64
227×distribute-neg-frac_binary64
181×associate-*r*_binary64
178×*-commutative_binary64
Counts
323 → 237
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03838954
110007181
230566335
346286325
449836325
548126325

prune186.0ms (3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2370237
Fresh022
Picked011
Done000
Total2373240
Error
0b
Counts
240 → 3
Alt Table
StatusErrorProgram
10.5b
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
22.1b
(fma.f64 2 (/.f64 z t) x)
2.7b
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
Compiler

Compiled 8639 to 3895 computations (54.9% saved)

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
1.1b
(-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))
19.5b
(/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t)))

series88.0ms (1.4%)

Counts
3 → 120
Calls

3 calls:

49.0ms
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
26.0ms
(/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t)))
12.0ms
(-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))

rewrite28.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
28×prod-diff_binary64
25×*-un-lft-identity_binary64
25×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
15×times-frac_binary64
Counts
3 → 97
Calls

3 calls:

9.0ms
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
7.0ms
(/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t)))
4.0ms
(-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))

simplify170.0ms (2.7%)

Algorithm
egg-herbie
Rules
333×cancel-sign-sub-inv_binary64
312×fma-neg_binary64
231×associate-*l*_binary64
217×associate-*r*_binary64
196×exp-prod_binary64
Counts
217 → 191
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02886068
17955719
231825532
346525532
448435532

prune151.0ms (2.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1910191
Fresh011
Picked011
Done011
Total1913194
Error
0b
Counts
194 → 3
Alt Table
StatusErrorProgram
10.5b
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
22.1b
(fma.f64 2 (/.f64 z t) x)
2.7b
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
Compiler

Compiled 7340 to 4026 computations (45.1% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 2 (/.f64 z t) x)

series8.0ms (0.1%)

Counts
1 → 36
Calls

1 calls:

8.0ms
(fma.f64 2 (/.f64 z t) x)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 2 (/.f64 z t) x)

simplify75.0ms (1.2%)

Algorithm
egg-herbie
Rules
548×associate-*l/_binary64
542×distribute-rgt-in_binary64
507×distribute-lft-in_binary64
443×associate-+l+_binary64
396×fma-def_binary64
Counts
46 → 14
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
018376
123359
249359
3126359
4432359
51628359
64283359
74686359
84929359
94999359

prune9.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New14014
Fresh000
Picked011
Done022
Total14317
Error
0b
Counts
17 → 3
Alt Table
StatusErrorProgram
10.5b
(-.f64 x (/.f64 (*.f64 (*.f64 y 2) z) (-.f64 (*.f64 (*.f64 z 2) z) (*.f64 y t))))
22.1b
(fma.f64 2 (/.f64 z t) x)
2.7b
(-.f64 x (/.f64 y (-.f64 z (*.f64 1/2 (*.f64 (/.f64 y z) t)))))
Compiler

Compiled 187 to 100 computations (46.5% saved)

regimes319.0ms (5.1%)

Accuracy

Total 1.5b remaining (99.5%)

Threshold costs 0b (0%)

Counts
56 → 2
Compiler

Compiled 6046 to 4156 computations (31.3% saved)

bsearch2.0ms (0%)

Compiler

Compiled 21 to 14 computations (33.3% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
20×*-commutative_binary64
19×+-commutative_binary64
19×sub-neg_binary64
13×neg-sub0_binary64
13×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03268
15968
29168
312268
414868
515768
616068
715768

end65.0ms (1%)

Compiler

Compiled 148 to 92 computations (37.8% saved)

Profiling

Loading profile data...