Details

Time bar (total: 8.5s)

analyze1.6s (19.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
0%99.8%0.2%8
0%99.8%0.2%9
0%99.8%0.2%10
0%99.8%0.2%11
0%99.8%0.2%12
3.7%96.1%0.2%13
4.2%94.5%1.3%14
Compiler

Compiled 22 to 16 computations (27.3% saved)

sample1.9s (22.1%)

Results
1.4s8256×body128valid
355.0ms2418×body128invalid
Compiler

Compiled 65 to 47 computations (27.7% saved)

simplify97.0ms (1.1%)

Algorithm
egg-herbie
Rules
669×fma-neg_binary64
614×times-frac_binary64
480×neg-mul-1_binary64
416×div-sub_binary64
394×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
01525
12823
25523
310121
422021
542321
683420
7184519
8389319
9428119
10463319
11495619
12480419

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
11.4b
(+.f64 (/.f64 x y) (/.f64 (+.f64 2 (*.f64 (*.f64 z 2) (-.f64 1 t))) (*.f64 t z)))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
Compiler

Compiled 110 to 79 computations (28.2% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t))
0.0b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
0.1b
(/.f64 (+.f64 -2 (/.f64 -2 z)) t)

series80.0ms (0.9%)

Counts
3 → 96
Calls

3 calls:

38.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
32.0ms
(/.f64 (+.f64 -2 (/.f64 -2 z)) t)
9.0ms
(-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t))

rewrite62.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
179×*-un-lft-identity_binary64
121×add-sqr-sqrt_binary64
118×times-frac_binary64
116×add-cube-cbrt_binary64
96×prod-diff_binary64
Counts
3 → 215
Calls

3 calls:

21.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
11.0ms
(-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t))
6.0ms
(/.f64 (+.f64 -2 (/.f64 -2 z)) t)

simplify234.0ms (2.8%)

Algorithm
egg-herbie
Rules
708×fma-def_binary64
501×distribute-rgt-in_binary64
470×distribute-lft-in_binary64
329×fma-neg_binary64
178×cancel-sign-sub-inv_binary64
Counts
311 → 270
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02928725
17505951
217524992
348894992
448284992

prune1.7s (19.9%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2637270
Fresh101
Picked011
Done000
Total2648272
Error
0b
Counts
272 → 8
Alt Table
StatusErrorProgram
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 (+.f64 -2 (/.f64 -2 z)) (/.f64 1 t))))
30.9b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 t)) (/.f64 (+.f64 -2 (/.f64 -2 z)) (sqrt.f64 t)))))
48.8b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 (sqrt.f64 (+.f64 -2 (/.f64 -2 z))) (/.f64 (sqrt.f64 (+.f64 -2 (/.f64 -2 z))) t))))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))))))
30.6b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 (sqrt.f64 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)) (sqrt.f64 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))))
46.8b
(log1p.f64 (expm1.f64 (+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))))
11.8b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (-.f64 (*.f64 -2 -2) (*.f64 (/.f64 -2 z) (/.f64 -2 z))) (*.f64 t (-.f64 -2 (/.f64 -2 z))))))
Compiler

Compiled 10219 to 7173 computations (29.8% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z))))))
0.0b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))))))
0.0b
(+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))
0.7b
(/.f64 2 (*.f64 t z))

series57.0ms (0.7%)

Counts
4 → 96
Calls

4 calls:

30.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))))))
10.0ms
(+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))
8.0ms
(-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z))))))
8.0ms
(/.f64 2 (*.f64 t z))

rewrite26.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
30×*-un-lft-identity_binary64
26×fma-def_binary64
23×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
21×times-frac_binary64
Counts
4 → 112
Calls

4 calls:

8.0ms
(+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))
7.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z)))))))
3.0ms
(/.f64 2 (*.f64 t z))
2.0ms
(-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 2 (*.f64 t z))))))

simplify108.0ms (1.3%)

Algorithm
egg-herbie
Rules
669×fma-def_binary64
616×distribute-rgt-in_binary64
563×distribute-lft-in_binary64
299×fma-neg_binary64
133×cancel-sign-sub-inv_binary64
Counts
208 → 184
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01793372
14513214
213913162
348273162
448723162

prune224.0ms (2.7%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1804184
Fresh516
Picked101
Done011
Total1866192
Error
0b
Counts
192 → 6
Alt Table
StatusErrorProgram
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (fma.f64 (/.f64 (sqrt.f64 2) 1) (/.f64 (sqrt.f64 2) t) (/.f64 2 (*.f64 t z)))))))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))))))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))))))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (*.f64 (/.f64 (sqrt.f64 2) t) (/.f64 (sqrt.f64 2) z)))))))
46.8b
(log1p.f64 (expm1.f64 (+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))))
Compiler

Compiled 5052 to 3260 computations (35.5% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z)))))
0.0b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))))))
0.0b
(+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))
0.3b
(/.f64 (/.f64 2 t) z)

series56.0ms (0.7%)

Counts
4 → 120
Calls

4 calls:

30.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))))))
9.0ms
(+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))
9.0ms
(-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z)))))
7.0ms
(/.f64 (/.f64 2 t) z)

rewrite49.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
95×times-frac_binary64
74×*-un-lft-identity_binary64
63×add-sqr-sqrt_binary64
63×add-cube-cbrt_binary64
26×fma-def_binary64
Counts
4 → 161
Calls

4 calls:

22.0ms
(+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))
7.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))))))
4.0ms
(/.f64 (/.f64 2 t) z)
2.0ms
(-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z)))))

simplify140.0ms (1.7%)

Algorithm
egg-herbie
Rules
657×fma-def_binary64
599×times-frac_binary64
579×distribute-rgt-in_binary64
367×fma-neg_binary64
147×associate-/l/_binary64
Counts
281 → 245
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02764528
16554371
218454316
348564316
449704316

prune269.0ms (3.2%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2450245
Fresh044
Picked011
Done011
Total2456251
Error
0b
Counts
251 → 6
Alt Table
StatusErrorProgram
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (fma.f64 (/.f64 (sqrt.f64 2) 1) (/.f64 (sqrt.f64 2) t) (/.f64 2 (*.f64 t z)))))))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))))))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))))))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (*.f64 (/.f64 (sqrt.f64 2) t) (/.f64 (sqrt.f64 2) z)))))))
46.8b
(log1p.f64 (expm1.f64 (+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))))
Compiler

Compiled 6807 to 4528 computations (33.5% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))))))
0.0b
(+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))
0.4b
(/.f64 (*.f64 t z) (sqrt.f64 2))
0.8b
(/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2)))

series103.0ms (1.2%)

Counts
4 → 96
Calls

4 calls:

47.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))))))
22.0ms
(/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2)))
21.0ms
(+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))
13.0ms
(/.f64 (*.f64 t z) (sqrt.f64 2))

rewrite59.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
128×times-frac_binary64
76×*-un-lft-identity_binary64
66×add-sqr-sqrt_binary64
66×add-cube-cbrt_binary64
60×sqrt-prod_binary64
Counts
4 → 190
Calls

4 calls:

30.0ms
(+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))
7.0ms
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))))))
6.0ms
(/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2)))
3.0ms
(/.f64 (*.f64 t z) (sqrt.f64 2))

simplify156.0ms (1.8%)

Algorithm
egg-herbie
Rules
511×distribute-rgt-in_binary64
468×distribute-lft-in_binary64
468×fma-def_binary64
173×fma-neg_binary64
142×associate-/r/_binary64
Counts
286 → 261
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02605467
16664786
220764642
346684442
449484442

prune331.0ms (3.9%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New2601261
Fresh123
Picked011
Done022
Total2616267
Error
0b
Counts
267 → 6
Alt Table
StatusErrorProgram
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (*.f64 t (/.f64 z (sqrt.f64 2)))))))))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (fma.f64 (/.f64 (sqrt.f64 2) 1) (/.f64 (sqrt.f64 2) t) (/.f64 2 (*.f64 t z)))))))
0.1b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (/.f64 2 t) z))))))
0.2b
(+.f64 (/.f64 x y) (-.f64 -2 (*.f64 1 (neg.f64 (+.f64 (/.f64 2 t) (/.f64 (sqrt.f64 2) (/.f64 (*.f64 t z) (sqrt.f64 2))))))))
46.8b
(log1p.f64 (expm1.f64 (+.f64 (/.f64 x y) (-.f64 -2 (/.f64 (+.f64 -2 (/.f64 -2 z)) t)))))
Compiler

Compiled 8006 to 5767 computations (28% saved)

regimes1.0s (12.4%)

Accuracy

Total 0.1b remaining (82.9%)

Threshold costs 0.1b (82.9%)

Counts
128 → 1
Compiler

Compiled 19763 to 15418 computations (22% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
17×cancel-sign-sub-inv_binary64
15×distribute-rgt-neg-in_binary64
10×distribute-lft-neg-in_binary64
sub-neg_binary64
neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01827
13825
25925
38225
49725
510625
610825
710225

end110.0ms (1.3%)

Compiler

Compiled 179 to 141 computations (21.2% saved)

Profiling

Loading profile data...