Details

Time bar (total: 5.9s)

analyze3.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
Compiler

Compiled 53 to 38 computations (28.3% saved)

sample1.5s (25.4%)

Symmetry

(sort a b c d e)

Results
1.5s8256×body128valid
Compiler

Compiled 120 to 85 computations (29.2% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
125×associate-+l+_binary64
97×associate-+r+_binary64
51×+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01013
12013
25913
318813
433913
533913
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0.1%)

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
0.2b
(+.f64 e (+.f64 c (+.f64 a (+.f64 d b))))
0.4b
(+.f64 (+.f64 (+.f64 (+.f64 e d) c) b) a)
Compiler

Compiled 79 to 49 computations (38% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(+.f64 c (+.f64 a (+.f64 d b)))
0.2b
(+.f64 e (+.f64 c (+.f64 a (+.f64 d b))))
0.2b
(+.f64 a (+.f64 d b))

series21.0ms (0.3%)

Counts
3 → 81
Calls

3 calls:

11.0ms
(+.f64 e (+.f64 c (+.f64 a (+.f64 d b))))
5.0ms
(+.f64 c (+.f64 a (+.f64 d b)))
4.0ms
(+.f64 a (+.f64 d b))

rewrite67.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
426×fma-neg_binary64
236×expm1-udef_binary64
236×log1p-udef_binary64
128×add-sqr-sqrt_binary64
127×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01030
124230
2389930
Stop Event
node limit
Counts
3 → 111
Calls

3 calls:

65.0ms
(+.f64 c (+.f64 a (+.f64 d b)))
65.0ms
(+.f64 e (+.f64 c (+.f64 a (+.f64 d b))))
65.0ms
(+.f64 a (+.f64 d b))

simplify24.0ms (0.4%)

Algorithm
egg-herbie
Rules
130×associate-+l+_binary64
56×associate-+r+_binary64
40×+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
024699
157699
2139699
3259699
4270699
Stop Event
saturated
Counts
192 → 141

prune158.0ms (2.7%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1347141
Fresh101
Picked101
Done000
Total1367143
Error
0b
Counts
143 → 7
Alt Table
StatusErrorProgram
0.2b
(*.f64 (+.f64 (+.f64 b (+.f64 a d)) (+.f64 e c)) 1)
0.3b
(+.f64 e (+.f64 c (/.f64 1 (/.f64 (fma.f64 a a (*.f64 (+.f64 d b) (-.f64 (+.f64 d b) a))) (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 d b) 3))))))
0.4b
(+.f64 e (+.f64 c (fma.f64 (cbrt.f64 (pow.f64 (+.f64 d b) 2)) (cbrt.f64 (+.f64 d b)) a)))
0.3b
(+.f64 d (+.f64 b (+.f64 a (+.f64 c e))))
0.4b
(+.f64 c (+.f64 a (+.f64 d (+.f64 b e))))
0.3b
(+.f64 e (+.f64 c (pow.f64 (sqrt.f64 (+.f64 b (+.f64 a d))) 2)))
0.3b
(+.f64 e (+.f64 c (/.f64 (+.f64 (pow.f64 (+.f64 a d) 3) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 a d) (+.f64 a d)) (-.f64 (*.f64 b b) (*.f64 (+.f64 a d) b))))))
Compiler

Compiled 2528 to 819 computations (67.6% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(+.f64 (+.f64 b (+.f64 a d)) (+.f64 e c))
0.2b
(+.f64 b (+.f64 a d))

series14.0ms (0.2%)

Counts
2 → 96
Calls

2 calls:

7.0ms
(+.f64 (+.f64 b (+.f64 a d)) (+.f64 e c))
7.0ms
(+.f64 b (+.f64 a d))

rewrite65.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
433×fma-neg_binary64
236×expm1-udef_binary64
236×log1p-udef_binary64
128×add-sqr-sqrt_binary64
127×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01020
124220
2395520
Stop Event
node limit
Counts
2 → 87
Calls

2 calls:

63.0ms
(+.f64 (+.f64 b (+.f64 a d)) (+.f64 e c))
63.0ms
(+.f64 b (+.f64 a d))

simplify26.0ms (0.4%)

Algorithm
egg-herbie
Rules
121×associate-+l+_binary64
62×associate-+r+_binary64
44×+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021852
148852
2128852
3268852
4279852
Stop Event
saturated
Counts
183 → 108

prune113.0ms (1.9%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1062108
Fresh246
Picked101
Done000
Total1096115
Error
0b
Counts
115 → 6
Alt Table
StatusErrorProgram
0.2b
(*.f64 (+.f64 (fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d)) (+.f64 e c)) 1)
0.3b
(+.f64 d (+.f64 b (+.f64 a (+.f64 c e))))
0.2b
(*.f64 (+.f64 (fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d)) (+.f64 e c)) 1)
0.4b
(+.f64 c (+.f64 a (+.f64 d (+.f64 b e))))
0.3b
(+.f64 e (+.f64 c (pow.f64 (sqrt.f64 (+.f64 b (+.f64 a d))) 2)))
0.3b
(+.f64 e (+.f64 c (/.f64 (+.f64 (pow.f64 (+.f64 a d) 3) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 a d) (+.f64 a d)) (-.f64 (*.f64 b b) (*.f64 (+.f64 a d) b))))))
Compiler

Compiled 2460 to 890 computations (63.8% saved)

localize19.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(+.f64 (fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d)) (+.f64 e c))
0.2b
(fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d))
0.4b
(cbrt.f64 (*.f64 b b))
0.6b
(cbrt.f64 b)

series765.0ms (12.9%)

Counts
4 → 120
Calls

4 calls:

442.0ms
(+.f64 (fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d)) (+.f64 e c))
254.0ms
(fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d))
35.0ms
(cbrt.f64 b)
33.0ms
(cbrt.f64 (*.f64 b b))

rewrite57.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
315×fma-neg_binary64
254×expm1-udef_binary64
254×log1p-udef_binary64
143×add-sqr-sqrt_binary64
139×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01329
128529
2395129
Stop Event
node limit
Counts
4 → 110
Calls

4 calls:

55.0ms
(+.f64 (fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d)) (+.f64 e c))
55.0ms
(fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d))
55.0ms
(cbrt.f64 (*.f64 b b))
55.0ms
(cbrt.f64 b)

simplify63.0ms (1.1%)

Algorithm
egg-herbie
Rules
866×unswap-sqr_binary64
520×fma-def_binary64
285×sub-neg_binary64
261×associate-*l*_binary64
252×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0341070
1921070
22281070
35571070
411411070
523841070
644821070
Stop Event
node limit
Counts
230 → 138

prune158.0ms (2.7%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1371138
Fresh145
Picked011
Done000
Total1386144
Error
0b
Counts
144 → 6
Alt Table
StatusErrorProgram
0.2b
(*.f64 (+.f64 (fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d)) (+.f64 e c)) 1)
0.4b
(+.f64 c (+.f64 a (+.f64 d (+.f64 b e))))
0.2b
(*.f64 (+.f64 (+.f64 a (+.f64 d b)) (+.f64 e c)) 1)
0.2b
(*.f64 (+.f64 (fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d)) (+.f64 e c)) 1)
0.3b
(+.f64 e (+.f64 c (pow.f64 (sqrt.f64 (+.f64 b (+.f64 a d))) 2)))
0.3b
(+.f64 e (+.f64 c (/.f64 (+.f64 (pow.f64 (+.f64 a d) 3) (pow.f64 b 3)) (+.f64 (*.f64 (+.f64 a d) (+.f64 a d)) (-.f64 (*.f64 b b) (*.f64 (+.f64 a d) b))))))
Compiler

Compiled 2669 to 1037 computations (61.1% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(+.f64 (fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d)) (+.f64 e c))
0.2b
(fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d))

series156.0ms (2.6%)

Counts
2 → 74
Calls

2 calls:

139.0ms
(+.f64 (fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d)) (+.f64 e c))
17.0ms
(fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d))

rewrite56.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
623×fma-def_binary64
306×fma-neg_binary64
233×expm1-udef_binary64
233×log1p-udef_binary64
128×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01120
124920
2359920
Stop Event
node limit
Counts
2 → 90
Calls

2 calls:

54.0ms
(+.f64 (fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d)) (+.f64 e c))
54.0ms
(fma.f64 (sqrt.f64 b) (sqrt.f64 b) (+.f64 a d))

simplify23.0ms (0.4%)

Algorithm
egg-herbie
Rules
119×associate-+l+_binary64
62×associate-+r+_binary64
45×+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021668
148668
2128668
3266668
4277668
Stop Event
saturated
Counts
164 → 109

prune111.0ms (1.9%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1081109
Fresh134
Picked101
Done011
Total1105115
Error
0b
Counts
115 → 5
Alt Table
StatusErrorProgram
0.2b
(*.f64 (+.f64 (fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (+.f64 a d)) (+.f64 e c)) 1)
0.4b
(+.f64 c (+.f64 a (+.f64 d (+.f64 b e))))
0.2b
(*.f64 (+.f64 (+.f64 a (+.f64 d b)) (+.f64 e c)) 1)
0.3b
(*.f64 (fma.f64 (cbrt.f64 b) (*.f64 (cbrt.f64 (sqrt.f64 b)) (sqrt.f64 b)) (+.f64 (+.f64 a d) (+.f64 e c))) 1)
0.3b
(+.f64 e (+.f64 c (pow.f64 (sqrt.f64 (+.f64 b (+.f64 a d))) 2)))
Compiler

Compiled 1890 to 680 computations (64% saved)

regimes2.4s (40.2%)

Accuracy

Total 0.2b remaining (89.6%)

Threshold costs 0.2b (89.6%)

Counts
208 → 1
Compiler

Compiled 38911 to 25688 computations (34% saved)

simplify5.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02340
13140
Stop Event
saturated

end110.0ms (1.9%)

Remove

(sort a b c d e)

Compiler

Compiled 211 to 141 computations (33.2% saved)

Profiling

Loading profile data...