Details

Time bar (total: 5.7s)

analyze5.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
0%50%50%3
25%25%50%4
37.5%12.5%50%5
43.7%6.2%50%6
46.9%3.1%50%7
48.4%1.6%50%8
49.2%0.8%50%9
49.6%0.4%50%10
49.8%0.2%50%11
49.9%0.1%50%12
49.9%0%50%13
49.9%0%50%14
Compiler

Compiled 14 to 12 computations (14.3% saved)

sample4.5s (80.1%)

Results
2.6s4105×body1024valid
763.0ms2038×body512valid
374.0ms457×body2048valid
278.0ms1082×body256valid
74.0ms574×body128valid
Compiler

Compiled 41 to 35 computations (14.6% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
58.6b
Counts
2 → 1
Alt Table
StatusErrorProgram
58.6b
(*.f64 (/.f64 1 2) (log.f64 (/.f64 (+.f64 1 x) (-.f64 1 x))))
Compiler

Compiled 39 to 33 computations (15.4% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (+.f64 1 x) (-.f64 1 x))
4.8b
(log.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)))

series5.0ms (0.1%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(log.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)))
2.0ms
(/.f64 (+.f64 1 x) (-.f64 1 x))

rewrite52.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
786×log1p-expm1-u_binary64
786×expm1-log1p-u_binary64
187×prod-diff_binary64
74×add-sqr-sqrt_binary64
73×egg-rr
Counts
2 → 73
Calls

2 calls:

50.0ms
(/.f64 (+.f64 1 x) (-.f64 1 x))
50.0ms
(log.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0722
115020
2197420
3521120

prune51.0ms (0.9%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New95297
Fresh000
Picked101
Done000
Total96298
Error
0b
Counts
98 → 2
Alt Table
StatusErrorProgram
42.5b
(*.f64 (/.f64 1 2) (/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log1p.f64 (neg.f64 x)) 3)) (+.f64 (*.f64 (log1p.f64 x) (log1p.f64 x)) (+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))))))
0.0b
(*.f64 (/.f64 1 2) (-.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))
Compiler

Compiled 1914 to 1263 computations (34% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))

series3.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

3.0ms
(-.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))

rewrite84.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
874×log1p-udef_binary64
484×expm1-log1p-u_binary64
482×log1p-expm1-u_binary64
391×prod-diff_binary64
300×unpow-prod-down_binary64
Counts
1 → 94
Calls

1 calls:

81.0ms
(-.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0610
11308
212248
349908
464678

prune42.0ms (0.7%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1060106
Fresh011
Picked011
Done000
Total1062108
Error
0b
Counts
108 → 2
Alt Table
StatusErrorProgram
42.5b
(*.f64 (/.f64 1 2) (/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log1p.f64 (neg.f64 x)) 3)) (+.f64 (*.f64 (log1p.f64 x) (log1p.f64 x)) (+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))))))
0.0b
(*.f64 (/.f64 1 2) (-.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))
Compiler

Compiled 2099 to 1086 computations (48.3% saved)

localize15.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (log1p.f64 x) (log1p.f64 x))
0.0b
(pow.f64 (log1p.f64 (neg.f64 x)) 3)
4.9b
(+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))
42.0b
(/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log1p.f64 (neg.f64 x)) 3)) (+.f64 (*.f64 (log1p.f64 x) (log1p.f64 x)) (+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))))

series367.0ms (6.5%)

Counts
4 → 48
Calls

4 calls:

345.0ms
(/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log1p.f64 (neg.f64 x)) 3)) (+.f64 (*.f64 (log1p.f64 x) (log1p.f64 x)) (+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))))
9.0ms
(pow.f64 (log1p.f64 (neg.f64 x)) 3)
7.0ms
(+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))
6.0ms
(*.f64 (log1p.f64 x) (log1p.f64 x))

rewrite94.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
592×fma-def_binary64
291×fma-neg_binary64
216×expm1-udef_binary64
216×log1p-udef_binary64
212×egg-rr
Counts
4 → 212
Calls

4 calls:

88.0ms
(*.f64 (log1p.f64 x) (log1p.f64 x))
88.0ms
(pow.f64 (log1p.f64 (neg.f64 x)) 3)
88.0ms
(+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))
88.0ms
(/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log1p.f64 (neg.f64 x)) 3)) (+.f64 (*.f64 (log1p.f64 x) (log1p.f64 x)) (+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01574
135031
2343431
3487231

prune296.0ms (5.2%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New2600260
Fresh000
Picked011
Done011
Total2602262
Error
0b
Counts
262 → 2
Alt Table
StatusErrorProgram
42.5b
(*.f64 (/.f64 1 2) (/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log1p.f64 (neg.f64 x)) 3)) (+.f64 (*.f64 (log1p.f64 x) (log1p.f64 x)) (+.f64 (*.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 (neg.f64 x))) (*.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))))))
0.0b
(*.f64 (/.f64 1 2) (-.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x))))
Compiler

Compiled 15890 to 10329 computations (35% saved)

regimes47.0ms (0.8%)

Accuracy

Total 0.0b remaining (48.2%)

Threshold costs 0.0b (48.2%)

Counts
12 → 1
Compiler

Compiled 936 to 706 computations (24.6% saved)

simplify2.0ms (0%)

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
01113
11913
22413
32713
42813
52613

end50.0ms (0.9%)

Compiler

Compiled 65 to 42 computations (35.4% saved)

Profiling

Loading profile data...