Details

Time bar (total: 6.6s)

analyze6.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
25%75%0%3
50%50%0%4
93.7%6.2%0%5
96.8%3.1%0%6
98.4%1.6%0%7
99.2%0.8%0%8
99.6%0.4%0%9
99.8%0.2%0%10
99.9%0.1%0%11
99.9%0%0%12
99.9%0%0%13
99.9%0%0%14
Compiler

Compiled 37 to 29 computations (21.6% saved)

sample1.6s (23.7%)

Results
1.5s8256×body128valid
Compiler

Compiled 110 to 86 computations (21.8% saved)

simplify76.0ms (1.2%)

Algorithm
egg-herbie
Rules
1189×distribute-rgt-in_binary64
1108×fma-def_binary64
1005×distribute-lft-in_binary64
549×times-frac_binary64
430×distribute-rgt-out_binary64
Counts
1 → 2
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
01152
12348
24846
311842
428042
539442
666042
7128638
8163836
9221936
10248136
11263736
12267736
13249736
14512936

prune4.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
Compiler

Compiled 133 to 103 computations (22.6% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t))))
0.0b
(/.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
0.0b
(/.f64 (*.f64 2 t) (+.f64 1 t))
0.0b
(*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))

series14.0ms (0.2%)

Counts
4 → 48
Calls

4 calls:

5.0ms
(*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))
3.0ms
(/.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
3.0ms
(+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t))))
3.0ms
(/.f64 (*.f64 2 t) (+.f64 1 t))

rewrite45.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
47×add-cbrt-cube_binary64
47×add-exp-log_binary64
41×*-un-lft-identity_binary64
33×times-frac_binary64
25×add-sqr-sqrt_binary64
Counts
4 → 145
Calls

4 calls:

14.0ms
(*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))
8.0ms
(/.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
5.0ms
(/.f64 (*.f64 2 t) (+.f64 1 t))
3.0ms
(+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t))))

simplify121.0ms (1.8%)

Algorithm
egg-herbie
Rules
497×associate-/l/_binary64
426×cancel-sign-sub-inv_binary64
285×fma-neg_binary64
243×distribute-rgt-in_binary64
199×distribute-lft-in_binary64
Counts
193 → 281
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02645119
17784531
225144069
350454069

prune837.0ms (12.6%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New5653568
Fresh000
Picked101
Done000
Total5663569
Error
0b
Counts
569 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
36.2b
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))
0.0b
(/.f64 (+.f64 1 (log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
Compiler

Compiled 24128 to 18796 computations (22.1% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (*.f64 2 t) (+.f64 1 t))
0.0b
(exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t))))
0.0b
(*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))
1.2b
(log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))

series6.0ms (0.1%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t))))
3.0ms
(log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))

rewrite4.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-log-exp_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
log-prod_binary64
add-cube-cbrt_binary64
Counts
2 → 28
Calls

2 calls:

1.0ms
(log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
1.0ms
(exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t))))

simplify69.0ms (1%)

Algorithm
egg-herbie
Rules
683×fma-neg_binary64
389×cancel-sign-sub-inv_binary64
344×associate-/l*_binary64
279×associate-/r*_binary64
217×associate-/l/_binary64
Counts
52 → 74
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0841203
11991052
2531941
31687914
44814907
55074907

prune718.0ms (10.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New5300530
Fresh022
Picked011
Done000
Total5303533
Error
0b
Counts
533 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
36.2b
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))
0.0b
(/.f64 (+.f64 1 (log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
Compiler

Compiled 22923 to 17971 computations (21.6% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t)))
0.0b
(/.f64 (*.f64 2 t) (+.f64 1 t))
0.0b
(*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))
0.0b
(/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))

series7.0ms (0.1%)

Counts
2 → 24
Calls

2 calls:

4.0ms
(/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))
3.0ms
(+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t)))

rewrite24.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
31×add-cbrt-cube_binary64
31×add-exp-log_binary64
11×*-un-lft-identity_binary64
11×cbrt-unprod_binary64
11×cbrt-undiv_binary64
Counts
2 → 55
Calls

2 calls:

11.0ms
(/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))
8.0ms
(+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t)))

simplify75.0ms (1.1%)

Algorithm
egg-herbie
Rules
749×associate-/r*_binary64
636×associate-/r/_binary64
390×fma-def_binary64
320×fma-neg_binary64
255×cancel-sign-sub-inv_binary64
Counts
79 → 111
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01481602
14511480
216881310
346351309
450241309

prune731.0ms (11%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New3980398
Fresh011
Picked011
Done011
Total3983401
Error
0b
Counts
401 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
36.2b
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))
0.0b
(/.f64 (+.f64 1 (log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
Compiler

Compiled 16470 to 12723 computations (22.8% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))
0.1b
(*.f64 (pow.f64 t 3) (-.f64 t 2))

series6.0ms (0.1%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(*.f64 (pow.f64 t 3) (-.f64 t 2))
3.0ms
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))

rewrite24.0ms (0.4%)

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

2 calls:

8.0ms
(*.f64 (pow.f64 t 3) (-.f64 t 2))
7.0ms
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))

simplify107.0ms (1.6%)

Algorithm
egg-herbie
Rules
666×fma-def_binary64
448×distribute-rgt-in_binary64
432×distribute-lft-in_binary64
380×exp-prod_binary64
166×associate-*l*_binary64
Counts
130 → 161
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01832038
13311664
211661657
346251633
448981633
550281633

prune143.0ms (2.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1610161
Fresh000
Picked011
Done022
Total1613164
Error
0b
Counts
164 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 1 (/.f64 (*.f64 (*.f64 2 t) (/.f64 (*.f64 2 t) (+.f64 1 t))) (+.f64 1 t))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
36.2b
(+.f64 (fma.f64 t t 1/2) (*.f64 (pow.f64 t 3) (-.f64 t 2)))
0.0b
(/.f64 (+.f64 1 (log.f64 (exp.f64 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))) (+.f64 2 (*.f64 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))))
Compiler

Compiled 3801 to 2828 computations (25.6% saved)

regimes1.9s (28.3%)

Accuracy

Total 0.0b remaining (14.5%)

Threshold costs 0.0b (14.5%)

Counts
252 → 1
Compiler

Compiled 32299 to 25681 computations (20.5% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01447
12047
21947

end130.0ms (2%)

Compiler

Compiled 151 to 119 computations (21.2% saved)

Profiling

Loading profile data...