Details

Time bar (total: 2.9s)

analyze4.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%50%0%2
75%25%0%3
87.5%12.5%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.2s (40.5%)

Infinites
0% of outputs are infinite.
Results
1.0s8256×body128valid
Compiler

Compiled 110 to 86 computations (21.8% saved)

simplify80.0ms (2.8%)

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

prune5.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 1) (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 2))
0.2b
(/.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 185 to 143 computations (22.7% saved)

localize9.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 1) (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 2))
0.0b
(+.f64 2 (+.f64 t (/.f64 1 t)))
0.1b
(/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t))))

series9.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

5.0ms
(/.f64 (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 1) (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 2))
3.0ms
(/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t))))
1.0ms
(+.f64 2 (+.f64 t (/.f64 1 t)))

rewrite24.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
58×*-un-lft-identity_binary64
27×times-frac_binary64
25×distribute-lft-out_binary64
23×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
Counts
3 → 93
Calls

3 calls:

8.0ms
(/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t))))
6.0ms
(+.f64 2 (+.f64 t (/.f64 1 t)))
2.0ms
(/.f64 (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 1) (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 2))

simplify123.0ms (4.3%)

Algorithm
egg-herbie
Rules
805×fma-neg_binary64
404×cancel-sign-sub-inv_binary64
323×fma-def_binary64
317×distribute-rgt-in_binary64
291×times-frac_binary64
Counts
129 → 173
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01803186
14142951
210812938
330072928
446282927
549382927

prune303.0ms (10.6%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New2800280
Fresh011
Picked011
Done000
Total2802282
Error
0b
Counts
282 → 2
Alt Table
StatusErrorProgram
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 1) (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 2))
0.2b
(/.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 9513 to 7392 computations (22.3% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
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 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))
0.2b
(/.f64 (*.f64 2 t) (+.f64 1 t))

series9.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

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 (/.f64 (*.f64 2 t) (+.f64 1 t)) (/.f64 (*.f64 2 t) (+.f64 1 t)))
3.0ms
(/.f64 (*.f64 2 t) (+.f64 1 t))

rewrite51.0ms (1.8%)

Algorithm
rewrite-expression-head
Rules
46×add-cbrt-cube_binary64
46×add-exp-log_binary64
39×*-un-lft-identity_binary64
33×times-frac_binary64
23×add-sqr-sqrt_binary64
Counts
3 → 129
Calls

3 calls:

23.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)))))
7.0ms
(/.f64 (*.f64 2 t) (+.f64 1 t))

simplify128.0ms (4.5%)

Algorithm
egg-herbie
Rules
733×fma-def_binary64
577×fma-neg_binary64
335×cancel-sign-sub-inv_binary64
258×distribute-rgt-in_binary64
222×distribute-lft-in_binary64
Counts
165 → 242
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02464517
17234010
223713612
347193611
449913611

prune669.0ms (23.4%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New5260526
Fresh000
Picked011
Done011
Total5262528
Error
0b
Counts
528 → 2
Alt Table
StatusErrorProgram
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 1) (fma.f64 t (/.f64 4 (+.f64 2 (+.f64 t (/.f64 1 t)))) 2))
0.2b
(/.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 22365 to 17389 computations (22.2% saved)

regimes206.0ms (7.2%)

Accuracy

Total 0.0b remaining (16.4%)

Threshold costs 0.0b (16.4%)

Counts
48 → 1
Compiler

Compiled 4708 to 3714 computations (21.1% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01236
11636
21536

end69.0ms (2.4%)

Compiler

Compiled 114 to 88 computations (22.8% saved)

Profiling

Loading profile data...