Details

Time bar (total: 2.3s)

analyze2.0ms (0.1%)

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

Compiled 42 to 30 computations (28.6% saved)

sample1.1s (50.3%)

Symmetry

(sort b c d)

Results
1.1s8256×body128valid
Compiler

Compiled 95 to 67 computations (29.5% saved)

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Rules
28×fma-def_binary64
10×distribute-lft-in_binary64
10×distribute-rgt-in_binary64
*-commutative_binary64
associate-+r+_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11910
23910
36010
47010
56710

prune1.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.0b
(*.f64 a (+.f64 (+.f64 b c) d))
Compiler

Compiled 33 to 21 computations (36.4% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 a (+.f64 (+.f64 b c) d))

series13.0ms (0.6%)

Counts
1 → 48
Calls

1 calls:

13.0ms
(*.f64 a (+.f64 (+.f64 b c) d))

rewrite10.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
associate-*r*_binary64
add-sqr-sqrt_binary64
distribute-lft-out_binary64
associate-*l*_binary64
Counts
1 → 26
Calls

1 calls:

6.0ms
(*.f64 a (+.f64 (+.f64 b c) d))

simplify88.0ms (3.9%)

Algorithm
egg-herbie
Rules
755×fma-neg_binary64
558×distribute-rgt-in_binary64
556×distribute-lft-in_binary64
324×associate-*l*_binary64
318×unswap-sqr_binary64
Counts
74 → 49
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
062792
1170750
2596750
32225750
42696750
53308750
64843750
75406750

prune30.0ms (1.3%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New46349
Fresh000
Picked011
Done000
Total46450
Error
0.0b
Counts
50 → 4
Alt Table
StatusErrorProgram
0.6b
(*.f64 (*.f64 a (sqrt.f64 (+.f64 (+.f64 b c) d))) (sqrt.f64 (+.f64 (+.f64 b c) d)))
0.6b
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 (+.f64 b c) d)))
0.0b
(+.f64 (*.f64 (+.f64 b c) a) (*.f64 d a))
0.0b
(*.f64 a (+.f64 (+.f64 b c) d))
Compiler

Compiled 724 to 196 computations (72.9% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 b c) a)
0.0b
(+.f64 (*.f64 (+.f64 b c) a) (*.f64 d a))

series19.0ms (0.8%)

Counts
2 → 84
Calls

2 calls:

13.0ms
(+.f64 (*.f64 (+.f64 b c) a) (*.f64 d a))
6.0ms
(*.f64 (+.f64 b c) a)

rewrite13.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
associate-*l*_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 38
Calls

2 calls:

7.0ms
(*.f64 (+.f64 b c) a)
5.0ms
(+.f64 (*.f64 (+.f64 b c) a) (*.f64 d a))

simplify93.0ms (4.1%)

Algorithm
egg-herbie
Rules
479×associate-*l*_binary64
445×distribute-rgt-in_binary64
425×distribute-lft-in_binary64
384×associate-*r*_binary64
375×fma-def_binary64
Counts
122 → 74
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0801223
12321120
27861117
329041116
439871116
549811116
649631116

prune38.0ms (1.7%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New73174
Fresh202
Picked011
Done101
Total76278
Error
0b
Counts
78 → 2
Alt Table
StatusErrorProgram
0.0b
(+.f64 (*.f64 (+.f64 b c) a) (*.f64 d a))
0.0b
(fma.f64 a b (fma.f64 a d (*.f64 a c)))
Compiler

Compiled 1081 to 270 computations (75% saved)

localize6.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a b (fma.f64 a d (*.f64 a c)))

series14.0ms (0.6%)

Counts
1 → 48
Calls

1 calls:

13.0ms
(fma.f64 a b (fma.f64 a d (*.f64 a c)))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 a b (fma.f64 a d (*.f64 a c)))

simplify102.0ms (4.5%)

Algorithm
egg-herbie
Rules
748×unswap-sqr_binary64
676×distribute-rgt-in_binary64
659×distribute-lft-in_binary64
562×associate-/l/_binary64
439×associate-*l*_binary64
Counts
58 → 29
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027609
147562
2109562
3429562
42539562
52688562
62979562
73439562
84029562
94178562
104940562

prune12.0ms (0.5%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New29029
Fresh000
Picked011
Done011
Total29231
Error
0b
Counts
31 → 2
Alt Table
StatusErrorProgram
0.0b
(+.f64 (*.f64 (+.f64 b c) a) (*.f64 d a))
0.0b
(fma.f64 a b (fma.f64 a d (*.f64 a c)))
Compiler

Compiled 344 to 74 computations (78.5% saved)

regimes141.0ms (6.2%)

Accuracy

Total 0.0b remaining (50%)

Threshold costs 0.0b (50%)

Counts
17 → 1
Compiler

Compiled 2021 to 1141 computations (43.5% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
1912
2912

end526.0ms (23.2%)

Compiler

Compiled 78 to 43 computations (44.9% saved)

Profiling

Loading profile data...