Details

Time bar (total: 2.3s)

analyze3.0ms (0.1%)

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

Compiled 24 to 20 computations (16.7% saved)

sample25.0ms (1.1%)

Algorithm
intervals
Results
10.0ms256×pre128true
6.0ms256×body128valid
Compiler

Compiled 31 to 31 computations (0% saved)

simplify173.0ms (7.6%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
04310
14310

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 0.1b

Counts
2 → 1
Compiler

Compiled 14 to 14 computations (0% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

0.1b
(*.f64 a (+.f64 (+.f64 b c) d))

rewrite12.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64_2143
add-sqr-sqrt_binary64_2165 associate-*r*_binary64_2083
pow1_binary64_2204 add-exp-log_binary64_2181 associate-*l*_binary64_2084 distribute-lft-out_binary64_2094 add-cube-cbrt_binary64_2178 add-cbrt-cube_binary64_2179
associate-*r/_binary64_2085
add-log-exp_binary64_2182 distribute-rgt-in_binary64_2093 cbrt-unprod_binary64_2176 pow-prod-down_binary64_2214 prod-exp_binary64_2192 unswap-sqr_binary64_2111 flip3-+_binary64_2146 flip-+_binary64_2117 *-commutative_binary64_2074 distribute-lft-in_binary64_2092
Counts
1 → 24
Calls

1 calls:

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

series61.0ms (2.7%)

Counts
1 → 3
Calls

1 calls:

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

simplify76.0ms (3.3%)

Algorithm
egg-herbie
Counts
27 → 27
Iterations

Useful iterations: 0 (65.0ms)

IterNodesCost
05242312

prune53.0ms (2.4%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New24327
Fresh000
Picked011
Done000
Total24428

Merged error: 0.0b

Counts
28 → 4
Compiler

Compiled 942 to 479 computations (49.2% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

rewrite16.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64_2165 *-un-lft-identity_binary64_2143
pow1_binary64_2204 add-log-exp_binary64_2182 associate-*r*_binary64_2083 add-exp-log_binary64_2181 add-cube-cbrt_binary64_2178 add-cbrt-cube_binary64_2179
associate-*l*_binary64_2084
distribute-rgt-in_binary64_2093 associate-+l+_binary64_2076 distribute-lft-out_binary64_2094 associate-*r/_binary64_2085 flip3-+_binary64_2146 flip-+_binary64_2117 distribute-lft-in_binary64_2092
+-commutative_binary64_2073 cbrt-unprod_binary64_2176 sum-log_binary64_2234 pow-prod-down_binary64_2214 prod-exp_binary64_2192 unswap-sqr_binary64_2111 *-commutative_binary64_2074
Counts
2 → 37
Calls

2 calls:

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

series119.0ms (5.2%)

Counts
2 → 6
Calls

2 calls:

65.0ms
(+.f64 (*.f64 a (+.f64 b c)) (*.f64 a d))
54.0ms
(*.f64 a (+.f64 b c))

simplify67.0ms (3%)

Algorithm
egg-herbie
Counts
43 → 43
Iterations

Useful iterations: 0 (56.0ms)

IterNodesCost
05010471

prune39.0ms (1.7%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New40343
Fresh022
Picked101
Done101
Total42547

Merged error: 0b

Counts
47 → 5
Compiler

Compiled 815 to 308 computations (62.2% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

rewrite16.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64_2165 *-un-lft-identity_binary64_2143
pow1_binary64_2204 add-log-exp_binary64_2182 associate-*r*_binary64_2083 add-exp-log_binary64_2181 add-cube-cbrt_binary64_2178 add-cbrt-cube_binary64_2179
associate-*l*_binary64_2084
distribute-rgt-in_binary64_2093 associate-+r+_binary64_2075 associate-*r/_binary64_2085 flip3-+_binary64_2146 flip-+_binary64_2117 distribute-lft-in_binary64_2092
+-commutative_binary64_2073 cbrt-unprod_binary64_2176 sum-log_binary64_2234 pow-prod-down_binary64_2214 prod-exp_binary64_2192 distribute-lft-out_binary64_2094 unswap-sqr_binary64_2111 *-commutative_binary64_2074
Counts
2 → 36
Calls

2 calls:

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

series110.0ms (4.8%)

Counts
2 → 6
Calls

2 calls:

64.0ms
(+.f64 (*.f64 b a) (*.f64 a (+.f64 c d)))
46.0ms
(*.f64 a (+.f64 c d))

simplify52.0ms (2.3%)

Algorithm
egg-herbie
Counts
42 → 42
Iterations

Useful iterations: 0 (42.0ms)

IterNodesCost
05095464

prune33.0ms (1.5%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New42042
Fresh044
Picked011
Done000
Total42547

Merged error: 0b

Counts
47 → 5
Compiler

Compiled 692 to 230 computations (66.8% saved)

localize8.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.1b
(+.f64 (*.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c)))) (*.f64 a d))
0.1b
(sqrt.f64 (*.f64 a (+.f64 b c)))
0.1b
(sqrt.f64 (*.f64 a (+.f64 b c)))
0.5b
(*.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c))))

rewrite53.0ms (2.3%)

Algorithm
rewrite-expression-head
Rules
59×pow1_binary64_2204
32×sqrt-pow1_binary64_2161
22×pow-prod-down_binary64_2214
18×associate-*r/_binary64_2085
16×sqrt-div_binary64_2160
12×pow1/2_binary64_2223
10×add-sqr-sqrt_binary64_2165 pow-prod-up_binary64_2213
flip3-+_binary64_2146 flip-+_binary64_2117
add-cube-cbrt_binary64_2178 *-un-lft-identity_binary64_2143
add-log-exp_binary64_2182 pow-sqr_binary64_2116 add-exp-log_binary64_2181 sqrt-prod_binary64_2159 add-cbrt-cube_binary64_2179
frac-times_binary64_2153 associate-*r*_binary64_2083 associate-*l*_binary64_2084 swap-sqr_binary64_2110
associate-*l/_binary64_2086
+-commutative_binary64_2073 pow2_binary64_2224 sqrt-unprod_binary64_2163 pow-plus_binary64_2206 cbrt-unprod_binary64_2176 sum-log_binary64_2234 prod-exp_binary64_2192 unswap-sqr_binary64_2111 rem-square-sqrt_binary64_2155 *-commutative_binary64_2074
Counts
4 → 94
Calls

4 calls:

17.0ms
(+.f64 (*.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c)))) (*.f64 a d))
16.0ms
(*.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c))))
5.0ms
(sqrt.f64 (*.f64 a (+.f64 b c)))
5.0ms
(sqrt.f64 (*.f64 a (+.f64 b c)))

series262.0ms (11.5%)

Counts
4 → 12
Calls

4 calls:

72.0ms
(sqrt.f64 (*.f64 a (+.f64 b c)))
72.0ms
(sqrt.f64 (*.f64 a (+.f64 b c)))
65.0ms
(+.f64 (*.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c)))) (*.f64 a d))
53.0ms
(*.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c))))

simplify66.0ms (2.9%)

Algorithm
egg-herbie
Counts
106 → 106
Iterations

Useful iterations: 0 (48.0ms)

IterNodesCost
049571253
149571253

prune77.0ms (3.4%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1060106
Fresh033
Picked011
Done011
Total1065111

Merged error: 0b

Counts
111 → 5
Compiler

Compiled 1953 to 481 computations (75.4% saved)

regimes90.0ms (4%)

Compiler

Compiled 532 to 392 computations (26.3% saved)

bsearch0.0ms (0%)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
01313
11313

end0.0ms (0%)

sample841.0ms (37%)

Algorithm
intervals
Results
321.0ms8000×pre128true
205.0ms8000×body128valid
Compiler

Compiled 115 to 88 computations (23.5% saved)

Profiling

Loading profile data...