Details

Time bar (total: 21.6s)

analyze34.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
25%74.9%0.1%3
25%74.9%0.1%4
56.2%43.7%0.1%5
65.6%34.3%0.1%6
79.6%20.3%0.1%7
83.5%16.4%0.1%8
90.1%9.8%0.1%9
91.9%8%0.1%10
95.1%4.8%0.1%11
96%4%0.1%12
97.5%2.4%0.1%13
97.9%2%0.1%14
Compiler

Compiled 10 to 8 computations (20% saved)

sample21.0ms (0.1%)

Algorithm
intervals
Results
12.0ms255×body128valid
0.0msbody1024valid
Compiler

Compiled 19 to 17 computations (10.5% saved)

simplify2.2s (10.3%)

Algorithm
egg-herbie
Rules
387×cancel-sign-sub-inv_binary64_17094
366×div-sub_binary64_17133
332×exp-prod_binary64_17180
222×sub-neg_binary64_17121
200×associate-/l*_binary64_17073
194×unsub-neg_binary64_17122
139×associate-/r*_binary64_17072
123×associate-*r*_binary64_17068
115×distribute-rgt-out--_binary64_17082
108×associate-/l/_binary64_17075
104×distribute-rgt-out_binary64_17081
82×distribute-rgt-in_binary64_17078
69×neg-mul-1_binary64_17124
68×times-frac_binary64_17134 distribute-frac-neg_binary64_17091
57×associate-/r/_binary64_17074
44×distribute-rgt-neg-in_binary64_17086 distribute-lft-in_binary64_17077
39×associate-*l*_binary64_17069
37×neg-sub0_binary64_17123
33×distribute-neg-frac_binary64_17092
30×distribute-lft-neg-in_binary64_17085
29×associate--r+_binary64_17064
28×associate--l-_binary64_17066
27×*-commutative_binary64_17059
26×associate-*l/_binary64_17071
23×distribute-lft-neg-out_binary64_17087
22×distribute-neg-in_binary64_17089
21×associate-+l-_binary64_17063
19×associate-*r/_binary64_17070
18×associate-+r-_binary64_17062
17×distribute-lft-out_binary64_17079 +-commutative_binary64_17058
16×sqr-neg_binary64_17142 distribute-rgt-neg-out_binary64_17088 associate-+r+_binary64_17060
15×associate--l+_binary64_17065
14×div0_binary64_17109 distribute-lft-out--_binary64_17080
13×associate--r-_binary64_17067
11×distribute-rgt1-in_binary64_17084
10×*-rgt-identity_binary64_17118 remove-double-neg_binary64_17116
*-lft-identity_binary64_17117 sub0-neg_binary64_17115 mul0-lft_binary64_17110 associate-+l+_binary64_17061
cube-div_binary64_17157 cube-prod_binary64_17156 mul0-rgt_binary64_17111 distribute-neg-out_binary64_17090
cube-unmult_binary64_17165 /-rgt-identity_binary64_17119 +-rgt-identity_binary64_17113
--rgt-identity_binary64_17114
*-inverses_binary64_17108
mul-1-neg_binary64_17120 swap-sqr_binary64_17095
exp-diff_binary64_17176 count-2_binary64_17076
pow-plus_binary64_17191 exp-sum_binary64_17174 1-exp_binary64_17172 +-inverses_binary64_17107 pow-sqr_binary64_17101 sqr-pow_binary64_17100
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_17391 erf-erfc_binary64_17390 erf-odd_binary64_17389 if-if-and-not_binary64_17388 if-if-and_binary64_17387 if-if-or-not_binary64_17386 if-if-or_binary64_17385 if-not_binary64_17384 if-same_binary64_17383 if-false_binary64_17382 if-true_binary64_17381 not-gte_binary64_17380 not-lte_binary64_17379 not-gt_binary64_17378 not-lt_binary64_17377 gte-same_binary64_17376 lte-same_binary64_17375 gt-same_binary64_17374 lt-same_binary64_17373 sinh---cosh_binary64_17320 sinh-+-cosh_binary64_17319 sinh-cosh_binary64_17318 tanh-def-c_binary64_17317 tanh-def-b_binary64_17316 tanh-def-a_binary64_17315 cosh-def_binary64_17314 sinh-def_binary64_17313 tan-neg_binary64_17260 cos-neg_binary64_17259 sin-neg_binary64_17258 tan-0_binary64_17257 cos-0_binary64_17256 sin-0_binary64_17255 hang-m-tan_binary64_17254 hang-p-tan_binary64_17253 hang-m0-tan_binary64_17252 hang-p0-tan_binary64_17251 hang-0m-tan_binary64_17250 hang-0p-tan_binary64_17249 tan-+PI/2_binary64_17248 tan-+PI_binary64_17247 tan-PI_binary64_17246 tan-PI/3_binary64_17245 tan-PI/4_binary64_17244 tan-PI/6_binary64_17243 cos-+PI/2_binary64_17242 cos-+PI_binary64_17241 cos-PI_binary64_17240 cos-PI/2_binary64_17239 cos-PI/3_binary64_17238 cos-PI/4_binary64_17237 cos-PI/6_binary64_17236 sin-+PI/2_binary64_17235 sin-+PI_binary64_17234 sin-PI_binary64_17233 sin-PI/2_binary64_17232 sin-PI/3_binary64_17231 sin-PI/4_binary64_17230 sin-PI/6_binary64_17229 sub-1-sin_binary64_17228 sub-1-cos_binary64_17227 -1-add-sin_binary64_17226 -1-add-cos_binary64_17225 1-sub-sin_binary64_17224 1-sub-cos_binary64_17223 cos-sin-sum_binary64_17222 log-E_binary64_17218 log-pow_binary64_17217 log-rec_binary64_17216 log-div_binary64_17215 log-prod_binary64_17214 pow-base-0_binary64_17212 unpow1/3_binary64_17195 unpow3_binary64_17194 unpow2_binary64_17193 unpow1/2_binary64_17192 exp-to-pow_binary64_17190 pow-base-1_binary64_17188 unpow0_binary64_17187 unpow1_binary64_17186 unpow-1_binary64_17185 exp-lft-cube_binary64_17184 exp-lft-sqr_binary64_17183 exp-cbrt_binary64_17182 exp-sqrt_binary64_17181 div-exp_binary64_17179 rec-exp_binary64_17178 prod-exp_binary64_17177 exp-neg_binary64_17175 e-exp-1_binary64_17173 exp-1-e_binary64_17171 exp-0_binary64_17170 rem-log-exp_binary64_17169 rem-exp-log_binary64_17168 cube-mult_binary64_17158 cube-neg_binary64_17155 rem-3cbrt-rft_binary64_17154 rem-3cbrt-lft_binary64_17153 rem-cbrt-cube_binary64_17152 rem-cube-cbrt_binary64_17151 sqr-abs_binary64_17143 rem-sqrt-square_binary64_17141 rem-square-sqrt_binary64_17140 +-lft-identity_binary64_17112 lft-mult-inverse_binary64_17106 rgt-mult-inverse_binary64_17105 remove-double-div_binary64_17104 difference-of-sqr--1_binary64_17099 difference-of-sqr-1_binary64_17098 difference-of-squares_binary64_17097 unswap-sqr_binary64_17096 cancel-sign-sub_binary64_17093 distribute-lft1-in_binary64_17083
Counts
1 → 2
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
0813
11813
23513
37213
413913
524313
664113
720681
8231

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New202
Fresh011
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Compiler

Compiled 19 to 15 computations (21.1% saved)

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))

rewrite81.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
58×*-un-lft-identity_binary64_17128
40×add-sqr-sqrt_binary64_17150
30×times-frac_binary64_17134
19×distribute-lft-out--_binary64_17080
14×add-cube-cbrt_binary64_17163
13×difference-of-squares_binary64_17097
distribute-lft-out_binary64_17079 associate-/r*_binary64_17072
associate-/l*_binary64_17073
add-exp-log_binary64_17166 add-cbrt-cube_binary64_17164
flip3--_binary64_17132 associate-/l/_binary64_17075 flip--_binary64_17103 associate-/r/_binary64_17074
pow1_binary64_17189 div-exp_binary64_17179 add-log-exp_binary64_17167 cbrt-undiv_binary64_17162 frac-2neg_binary64_17139 div-sub_binary64_17133 clear-num_binary64_17127 div-inv_binary64_17125
Counts
1 → 58
Calls

1 calls:

11.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Compiler

Compiled 1117 to 472 computations (57.7% saved)

series293.0ms (1.4%)

Error
0.0b
Counts
1 → 22
Calls

1 calls:

251.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Compiler

Compiled 1434 to 1145 computations (20.2% saved)

simplify313.0ms (1.4%)

Algorithm
egg-herbie
Rules
574×times-frac_binary64_17134
426×associate-/l*_binary64_17073
396×associate-/r*_binary64_17072
285×distribute-rgt-in_binary64_17078
241×distribute-lft-in_binary64_17077
208×sub-neg_binary64_17121
189×cancel-sign-sub-inv_binary64_17094
165×associate-/r/_binary64_17074
142×distribute-neg-in_binary64_17089
137×associate-/l/_binary64_17075
101×+-commutative_binary64_17058
94×associate-+r+_binary64_17060
74×associate-+l+_binary64_17061
72×neg-mul-1_binary64_17124 neg-sub0_binary64_17123
71×div-sub_binary64_17133
65×associate--l+_binary64_17065
62×associate--r+_binary64_17064
60×distribute-neg-frac_binary64_17092
50×*-commutative_binary64_17059
45×distribute-rgt-neg-in_binary64_17086 distribute-rgt-out_binary64_17081
43×sqr-pow_binary64_17100
41×unsub-neg_binary64_17122
35×distribute-lft-neg-in_binary64_17085
30×associate-*l/_binary64_17071
29×distribute-lft-neg-out_binary64_17087 associate-*r/_binary64_17070
25×associate-*r*_binary64_17068
16×distribute-rgt-neg-out_binary64_17088
15×associate-*l*_binary64_17069
14×*-rgt-identity_binary64_17118
12×pow-sqr_binary64_17101
div-exp_binary64_17179 prod-exp_binary64_17177
pow-plus_binary64_17191 /-rgt-identity_binary64_17119 distribute-rgt-out--_binary64_17082
distribute-rgt1-in_binary64_17084
unpow3_binary64_17194 cube-unmult_binary64_17165 cube-mult_binary64_17158
log-div_binary64_17215 cube-prod_binary64_17156
unpow2_binary64_17193 unpow1_binary64_17186 cube-div_binary64_17157
rec-exp_binary64_17178 difference-of-squares_binary64_17097 swap-sqr_binary64_17095 associate--r-_binary64_17067
log-prod_binary64_17214 remove-double-neg_binary64_17116 unswap-sqr_binary64_17096 distribute-lft1-in_binary64_17083 distribute-lft-out_binary64_17079
log-rec_binary64_17216 exp-diff_binary64_17176 exp-sum_binary64_17174 1-exp_binary64_17172 rem-log-exp_binary64_17169 mul-1-neg_binary64_17120 *-lft-identity_binary64_17117 sub0-neg_binary64_17115 *-inverses_binary64_17108
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_17391 erf-erfc_binary64_17390 erf-odd_binary64_17389 if-if-and-not_binary64_17388 if-if-and_binary64_17387 if-if-or-not_binary64_17386 if-if-or_binary64_17385 if-not_binary64_17384 if-same_binary64_17383 if-false_binary64_17382 if-true_binary64_17381 not-gte_binary64_17380 not-lte_binary64_17379 not-gt_binary64_17378 not-lt_binary64_17377 gte-same_binary64_17376 lte-same_binary64_17375 gt-same_binary64_17374 lt-same_binary64_17373 sinh---cosh_binary64_17320 sinh-+-cosh_binary64_17319 sinh-cosh_binary64_17318 tanh-def-c_binary64_17317 tanh-def-b_binary64_17316 tanh-def-a_binary64_17315 cosh-def_binary64_17314 sinh-def_binary64_17313 tan-neg_binary64_17260 cos-neg_binary64_17259 sin-neg_binary64_17258 tan-0_binary64_17257 cos-0_binary64_17256 sin-0_binary64_17255 hang-m-tan_binary64_17254 hang-p-tan_binary64_17253 hang-m0-tan_binary64_17252 hang-p0-tan_binary64_17251 hang-0m-tan_binary64_17250 hang-0p-tan_binary64_17249 tan-+PI/2_binary64_17248 tan-+PI_binary64_17247 tan-PI_binary64_17246 tan-PI/3_binary64_17245 tan-PI/4_binary64_17244 tan-PI/6_binary64_17243 cos-+PI/2_binary64_17242 cos-+PI_binary64_17241 cos-PI_binary64_17240 cos-PI/2_binary64_17239 cos-PI/3_binary64_17238 cos-PI/4_binary64_17237 cos-PI/6_binary64_17236 sin-+PI/2_binary64_17235 sin-+PI_binary64_17234 sin-PI_binary64_17233 sin-PI/2_binary64_17232 sin-PI/3_binary64_17231 sin-PI/4_binary64_17230 sin-PI/6_binary64_17229 sub-1-sin_binary64_17228 sub-1-cos_binary64_17227 -1-add-sin_binary64_17226 -1-add-cos_binary64_17225 1-sub-sin_binary64_17224 1-sub-cos_binary64_17223 cos-sin-sum_binary64_17222 log-E_binary64_17218 log-pow_binary64_17217 pow-base-0_binary64_17212 unpow1/3_binary64_17195 unpow1/2_binary64_17192 exp-to-pow_binary64_17190 pow-base-1_binary64_17188 unpow0_binary64_17187 unpow-1_binary64_17185 exp-lft-cube_binary64_17184 exp-lft-sqr_binary64_17183 exp-cbrt_binary64_17182 exp-sqrt_binary64_17181 exp-prod_binary64_17180 exp-neg_binary64_17175 e-exp-1_binary64_17173 exp-1-e_binary64_17171 exp-0_binary64_17170 rem-exp-log_binary64_17168 cube-neg_binary64_17155 rem-3cbrt-rft_binary64_17154 rem-3cbrt-lft_binary64_17153 rem-cbrt-cube_binary64_17152 rem-cube-cbrt_binary64_17151 sqr-abs_binary64_17143 sqr-neg_binary64_17142 rem-sqrt-square_binary64_17141 rem-square-sqrt_binary64_17140 --rgt-identity_binary64_17114 +-rgt-identity_binary64_17113 +-lft-identity_binary64_17112 mul0-rgt_binary64_17111 mul0-lft_binary64_17110 div0_binary64_17109 +-inverses_binary64_17107 lft-mult-inverse_binary64_17106 rgt-mult-inverse_binary64_17105 remove-double-div_binary64_17104 difference-of-sqr--1_binary64_17099 difference-of-sqr-1_binary64_17098 cancel-sign-sub_binary64_17093 distribute-frac-neg_binary64_17091 distribute-neg-out_binary64_17090 distribute-lft-out--_binary64_17080 count-2_binary64_17076 associate--l-_binary64_17066 associate-+l-_binary64_17063 associate-+r-_binary64_17062
Counts
80 → 197
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02102339
15832207
220512102

prune261.0ms (1.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1943197
Fresh000
Picked011
Done000
Total1944198
Error
0.0b
Counts
198 → 4
Compiler

Compiled 4837 to 2314 computations (52.2% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(cbrt.f64 (-.f64 x y))
0.6b
(cbrt.f64 (-.f64 2 (+.f64 y x)))
0.6b
(cbrt.f64 (-.f64 2 (+.f64 x y)))
0.6b
(cbrt.f64 (-.f64 2 (+.f64 x y)))

rewrite151.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
25×*-un-lft-identity_binary64_17128
23×cbrt-prod_binary64_17159
16×add-sqr-sqrt_binary64_17150
add-cube-cbrt_binary64_17163 cbrt-div_binary64_17160
distribute-lft-out--_binary64_17080
pow1/3_binary64_17210 pow1_binary64_17189 add-log-exp_binary64_17167 add-exp-log_binary64_17166 add-cbrt-cube_binary64_17164 flip3--_binary64_17132 flip--_binary64_17103 difference-of-squares_binary64_17097
distribute-lft-out_binary64_17079
Counts
4 → 63
Calls

4 calls:

5.0ms
(cbrt.f64 (-.f64 2 (+.f64 x y)))
5.0ms
(cbrt.f64 (-.f64 2 (+.f64 x y)))
5.0ms
(cbrt.f64 (-.f64 2 (+.f64 y x)))
3.0ms
(cbrt.f64 (-.f64 x y))
Compiler

Compiled 2698 to 1137 computations (57.9% saved)

series665.0ms (3.1%)

Error
0.0b
Counts
4 → 32
Calls

4 calls:

163.0ms
(cbrt.f64 (-.f64 2 (+.f64 x y)))
159.0ms
(cbrt.f64 (-.f64 2 (+.f64 x y)))
156.0ms
(cbrt.f64 (-.f64 2 (+.f64 y x)))
127.0ms
(cbrt.f64 (-.f64 x y))
Compiler

Compiled 3958 to 2484 computations (37.2% saved)

simplify150.0ms (0.7%)

Algorithm
egg-herbie
Rules
592×distribute-rgt-in_binary64_17078
543×distribute-lft-in_binary64_17077
247×associate--r+_binary64_17064
243×cancel-sign-sub-inv_binary64_17094
147×sub-neg_binary64_17121
125×distribute-rgt-neg-in_binary64_17086
120×distribute-neg-in_binary64_17089 distribute-lft-neg-in_binary64_17085
114×sqr-pow_binary64_17100
110×associate-*r*_binary64_17068
92×associate-*l*_binary64_17069
91×associate-+r+_binary64_17060
90×associate-+l+_binary64_17061
85×associate-+l-_binary64_17063
76×pow-sqr_binary64_17101
70×*-commutative_binary64_17059
66×associate--l-_binary64_17066
65×associate-/r*_binary64_17072
58×neg-sub0_binary64_17123 associate-+r-_binary64_17062
54×times-frac_binary64_17134
53×distribute-lft-neg-out_binary64_17087
51×neg-mul-1_binary64_17124 unswap-sqr_binary64_17096
48×distribute-rgt-neg-out_binary64_17088
47×associate-/l/_binary64_17075 +-commutative_binary64_17058
40×associate--l+_binary64_17065
38×unsub-neg_binary64_17122
33×difference-of-squares_binary64_17097
31×exp-sum_binary64_17174
30×exp-prod_binary64_17180 distribute-rgt-out_binary64_17081
29×associate-/l*_binary64_17073
25×associate-*l/_binary64_17071
22×associate-*r/_binary64_17070
21×associate-/r/_binary64_17074
17×cube-unmult_binary64_17165 sub0-neg_binary64_17115
16×exp-diff_binary64_17176
15×+-rgt-identity_binary64_17113
13×div-sub_binary64_17133
12×pow-plus_binary64_17191 associate--r-_binary64_17067
10×unpow1/3_binary64_17195
log-div_binary64_17215 exp-to-pow_binary64_17190
swap-sqr_binary64_17095
unpow3_binary64_17194 rem-exp-log_binary64_17168 cube-mult_binary64_17158
exp-neg_binary64_17175 mul-1-neg_binary64_17120 distribute-lft-out_binary64_17079
log-prod_binary64_17214 unpow2_binary64_17193 unpow1_binary64_17186 cube-prod_binary64_17156 rem-3cbrt-lft_binary64_17153 rem-sqrt-square_binary64_17141 count-2_binary64_17076
log-pow_binary64_17217 log-rec_binary64_17216 sqr-neg_binary64_17142 remove-double-neg_binary64_17116 --rgt-identity_binary64_17114 distribute-frac-neg_binary64_17091
1-exp_binary64_17172 rem-log-exp_binary64_17169 cube-div_binary64_17157 *-rgt-identity_binary64_17118 mul0-lft_binary64_17110 *-inverses_binary64_17108 rgt-mult-inverse_binary64_17105 distribute-rgt1-in_binary64_17084
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_17391 erf-erfc_binary64_17390 erf-odd_binary64_17389 if-if-and-not_binary64_17388 if-if-and_binary64_17387 if-if-or-not_binary64_17386 if-if-or_binary64_17385 if-not_binary64_17384 if-same_binary64_17383 if-false_binary64_17382 if-true_binary64_17381 not-gte_binary64_17380 not-lte_binary64_17379 not-gt_binary64_17378 not-lt_binary64_17377 gte-same_binary64_17376 lte-same_binary64_17375 gt-same_binary64_17374 lt-same_binary64_17373 sinh---cosh_binary64_17320 sinh-+-cosh_binary64_17319 sinh-cosh_binary64_17318 tanh-def-c_binary64_17317 tanh-def-b_binary64_17316 tanh-def-a_binary64_17315 cosh-def_binary64_17314 sinh-def_binary64_17313 tan-neg_binary64_17260 cos-neg_binary64_17259 sin-neg_binary64_17258 tan-0_binary64_17257 cos-0_binary64_17256 sin-0_binary64_17255 hang-m-tan_binary64_17254 hang-p-tan_binary64_17253 hang-m0-tan_binary64_17252 hang-p0-tan_binary64_17251 hang-0m-tan_binary64_17250 hang-0p-tan_binary64_17249 tan-+PI/2_binary64_17248 tan-+PI_binary64_17247 tan-PI_binary64_17246 tan-PI/3_binary64_17245 tan-PI/4_binary64_17244 tan-PI/6_binary64_17243 cos-+PI/2_binary64_17242 cos-+PI_binary64_17241 cos-PI_binary64_17240 cos-PI/2_binary64_17239 cos-PI/3_binary64_17238 cos-PI/4_binary64_17237 cos-PI/6_binary64_17236 sin-+PI/2_binary64_17235 sin-+PI_binary64_17234 sin-PI_binary64_17233 sin-PI/2_binary64_17232 sin-PI/3_binary64_17231 sin-PI/4_binary64_17230 sin-PI/6_binary64_17229 sub-1-sin_binary64_17228 sub-1-cos_binary64_17227 -1-add-sin_binary64_17226 -1-add-cos_binary64_17225 1-sub-sin_binary64_17224 1-sub-cos_binary64_17223 cos-sin-sum_binary64_17222 log-E_binary64_17218 pow-base-0_binary64_17212 unpow1/2_binary64_17192 pow-base-1_binary64_17188 unpow0_binary64_17187 unpow-1_binary64_17185 exp-lft-cube_binary64_17184 exp-lft-sqr_binary64_17183 exp-cbrt_binary64_17182 exp-sqrt_binary64_17181 div-exp_binary64_17179 rec-exp_binary64_17178 prod-exp_binary64_17177 e-exp-1_binary64_17173 exp-1-e_binary64_17171 exp-0_binary64_17170 cube-neg_binary64_17155 rem-3cbrt-rft_binary64_17154 rem-cbrt-cube_binary64_17152 rem-cube-cbrt_binary64_17151 sqr-abs_binary64_17143 rem-square-sqrt_binary64_17140 /-rgt-identity_binary64_17119 *-lft-identity_binary64_17117 +-lft-identity_binary64_17112 mul0-rgt_binary64_17111 div0_binary64_17109 +-inverses_binary64_17107 lft-mult-inverse_binary64_17106 remove-double-div_binary64_17104 difference-of-sqr--1_binary64_17099 difference-of-sqr-1_binary64_17098 cancel-sign-sub_binary64_17093 distribute-neg-frac_binary64_17092 distribute-neg-out_binary64_17090 distribute-lft1-in_binary64_17083 distribute-rgt-out--_binary64_17082 distribute-lft-out--_binary64_17080
Counts
95 → 273
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01431456
12791426
26571411
318711306

prune692.0ms (3.2%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2730273
Fresh022
Picked011
Done011
Total2734277
Error
0.0b
Counts
277 → 4
Compiler

Compiled 11987 to 5409 computations (54.9% saved)

localize8.0ms (0%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x)))
0.0b
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) 3)
9.4b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) 3))

rewrite412.0ms (1.9%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
258×*-un-lft-identity_binary64_17128
180×add-sqr-sqrt_binary64_17150
150×times-frac_binary64_17134
83×distribute-lft-out--_binary64_17080
78×cbrt-prod_binary64_17159
72×unpow-prod-down_binary64_17207 cube-prod_binary64_17156
66×add-cube-cbrt_binary64_17163
57×difference-of-squares_binary64_17097
26×distribute-lft-out_binary64_17079
10×associate-/r/_binary64_17074
add-exp-log_binary64_17166 add-cbrt-cube_binary64_17164
flip3--_binary64_17132 flip--_binary64_17103 associate-/r*_binary64_17072
div-inv_binary64_17125 associate-/l*_binary64_17073
pow1_binary64_17189
add-log-exp_binary64_17167 pow-unpow_binary64_17205
cube-div_binary64_17157 unpow3_binary64_17194 cube-mult_binary64_17158 sqr-pow_binary64_17100 div-exp_binary64_17179 pow-exp_binary64_17196 rem-cube-cbrt_binary64_17151 cbrt-undiv_binary64_17162 associate-/l/_binary64_17075
pow1/3_binary64_17210 cbrt-div_binary64_17160 rem-cbrt-cube_binary64_17152 pow-pow_binary64_17200 pow-to-exp_binary64_17197 frac-2neg_binary64_17139 div-sub_binary64_17133 clear-num_binary64_17127
Counts
3 → 238
Calls

3 calls:

18.0ms
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) 3)
16.0ms
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) 3))
11.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x)))
Compiler

Compiled 5946 to 3109 computations (47.7% saved)

series1.2s (5.8%)

Error
0.0b
Counts
3 → 68
Calls

3 calls:

554.0ms
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) 3)
289.0ms
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x))) 3))
248.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 y x)))
Compiler

Compiled 5356 to 4356 computations (18.7% saved)

simplify807.0ms (3.7%)

Algorithm
egg-herbie
Rules
373×times-frac_binary64_17134
314×associate-/l*_binary64_17073
279×associate-/r*_binary64_17072
195×associate-*r/_binary64_17070
190×associate-*l/_binary64_17071
151×associate-*r*_binary64_17068
129×sqr-pow_binary64_17100
125×sub-neg_binary64_17121
119×+-commutative_binary64_17058
95×associate-*l*_binary64_17069
81×*-commutative_binary64_17059
77×associate-+r+_binary64_17060
65×distribute-neg-in_binary64_17089
59×pow-sqr_binary64_17101
58×cancel-sign-sub-inv_binary64_17094
57×unpow3_binary64_17194 cube-mult_binary64_17158
56×distribute-rgt-in_binary64_17078 associate-/l/_binary64_17075
53×distribute-lft-in_binary64_17077
50×associate-/r/_binary64_17074
43×cube-div_binary64_17157
42×rem-cbrt-cube_binary64_17152 neg-sub0_binary64_17123
40×neg-mul-1_binary64_17124
31×div-sub_binary64_17133
29×unswap-sqr_binary64_17096
24×associate--r+_binary64_17064
23×associate--l+_binary64_17065
12×distribute-rgt-neg-in_binary64_17086
log-prod_binary64_17214 exp-prod_binary64_17180 distribute-lft-neg-in_binary64_17085 distribute-rgt-out_binary64_17081
cube-prod_binary64_17156 /-rgt-identity_binary64_17119
log-div_binary64_17215 pow-plus_binary64_17191 *-rgt-identity_binary64_17118
distribute-neg-frac_binary64_17092
unpow2_binary64_17193 distribute-lft-neg-out_binary64_17087
log-pow_binary64_17217 rem-cube-cbrt_binary64_17151 rem-sqrt-square_binary64_17141 mul-1-neg_binary64_17120 distribute-rgt-out--_binary64_17082
pow-base-1_binary64_17188 rem-square-sqrt_binary64_17140 difference-of-squares_binary64_17097 swap-sqr_binary64_17095
unpow1_binary64_17186 div-exp_binary64_17179 rec-exp_binary64_17178 prod-exp_binary64_17177 exp-diff_binary64_17176 1-exp_binary64_17172 cube-unmult_binary64_17165 rem-3cbrt-lft_binary64_17153 *-lft-identity_binary64_17117 *-inverses_binary64_17108 distribute-lft-out_binary64_17079 count-2_binary64_17076
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_17391 erf-erfc_binary64_17390 erf-odd_binary64_17389 if-if-and-not_binary64_17388 if-if-and_binary64_17387 if-if-or-not_binary64_17386 if-if-or_binary64_17385 if-not_binary64_17384 if-same_binary64_17383 if-false_binary64_17382 if-true_binary64_17381 not-gte_binary64_17380 not-lte_binary64_17379 not-gt_binary64_17378 not-lt_binary64_17377 gte-same_binary64_17376 lte-same_binary64_17375 gt-same_binary64_17374 lt-same_binary64_17373 sinh---cosh_binary64_17320 sinh-+-cosh_binary64_17319 sinh-cosh_binary64_17318 tanh-def-c_binary64_17317 tanh-def-b_binary64_17316 tanh-def-a_binary64_17315 cosh-def_binary64_17314 sinh-def_binary64_17313 tan-neg_binary64_17260 cos-neg_binary64_17259 sin-neg_binary64_17258 tan-0_binary64_17257 cos-0_binary64_17256 sin-0_binary64_17255 hang-m-tan_binary64_17254 hang-p-tan_binary64_17253 hang-m0-tan_binary64_17252 hang-p0-tan_binary64_17251 hang-0m-tan_binary64_17250 hang-0p-tan_binary64_17249 tan-+PI/2_binary64_17248 tan-+PI_binary64_17247 tan-PI_binary64_17246 tan-PI/3_binary64_17245 tan-PI/4_binary64_17244 tan-PI/6_binary64_17243 cos-+PI/2_binary64_17242 cos-+PI_binary64_17241 cos-PI_binary64_17240 cos-PI/2_binary64_17239 cos-PI/3_binary64_17238 cos-PI/4_binary64_17237 cos-PI/6_binary64_17236 sin-+PI/2_binary64_17235 sin-+PI_binary64_17234 sin-PI_binary64_17233 sin-PI/2_binary64_17232 sin-PI/3_binary64_17231 sin-PI/4_binary64_17230 sin-PI/6_binary64_17229 sub-1-sin_binary64_17228 sub-1-cos_binary64_17227 -1-add-sin_binary64_17226 -1-add-cos_binary64_17225 1-sub-sin_binary64_17224 1-sub-cos_binary64_17223 cos-sin-sum_binary64_17222 log-E_binary64_17218 log-rec_binary64_17216 pow-base-0_binary64_17212 unpow1/3_binary64_17195 unpow1/2_binary64_17192 exp-to-pow_binary64_17190 unpow0_binary64_17187 unpow-1_binary64_17185 exp-lft-cube_binary64_17184 exp-lft-sqr_binary64_17183 exp-cbrt_binary64_17182 exp-sqrt_binary64_17181 exp-neg_binary64_17175 exp-sum_binary64_17174 e-exp-1_binary64_17173 exp-1-e_binary64_17171 exp-0_binary64_17170 rem-log-exp_binary64_17169 rem-exp-log_binary64_17168 cube-neg_binary64_17155 rem-3cbrt-rft_binary64_17154 sqr-abs_binary64_17143 sqr-neg_binary64_17142 unsub-neg_binary64_17122 remove-double-neg_binary64_17116 sub0-neg_binary64_17115 --rgt-identity_binary64_17114 +-rgt-identity_binary64_17113 +-lft-identity_binary64_17112 mul0-rgt_binary64_17111 mul0-lft_binary64_17110 div0_binary64_17109 +-inverses_binary64_17107 lft-mult-inverse_binary64_17106 rgt-mult-inverse_binary64_17105 remove-double-div_binary64_17104 difference-of-sqr--1_binary64_17099 difference-of-sqr-1_binary64_17098 cancel-sign-sub_binary64_17093 distribute-frac-neg_binary64_17091 distribute-neg-out_binary64_17090 distribute-rgt-neg-out_binary64_17088 distribute-rgt1-in_binary64_17084 distribute-lft1-in_binary64_17083 distribute-lft-out--_binary64_17080 associate--r-_binary64_17067 associate--l-_binary64_17066 associate-+l-_binary64_17063 associate-+r-_binary64_17062 associate-+l+_binary64_17061
Counts
306 → 579
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
052610248
115939600

prune1.1s (5%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New5790579
Fresh011
Picked011
Done022
Total5794583
Error
0.0b
Counts
583 → 4
Compiler

Compiled 15990 to 8241 computations (48.5% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))
0.1b
(*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))
2.4b
(*.f64 (/.f64 y (-.f64 2 y)) (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y))))
2.4b
(-.f64 (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))))

rewrite1.2s (5.5%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
84×frac-times_binary64_17138
63×associate-*r/_binary64_17070
61×add-sqr-sqrt_binary64_17150 associate-*l/_binary64_17071
55×frac-sub_binary64_17137 *-un-lft-identity_binary64_17128
54×flip3-+_binary64_17131 flip-+_binary64_17102
47×times-frac_binary64_17134
43×associate-*r*_binary64_17068
35×add-exp-log_binary64_17166 add-cbrt-cube_binary64_17164
33×add-cube-cbrt_binary64_17163
29×associate-*l*_binary64_17069
14×prod-exp_binary64_17177 cbrt-unprod_binary64_17161
13×pow1_binary64_17189
difference-of-squares_binary64_17097 distribute-lft-out--_binary64_17080
div-exp_binary64_17179 cbrt-undiv_binary64_17162
add-log-exp_binary64_17167 sub-div_binary64_17135 associate-/r/_binary64_17074
pow-prod-down_binary64_17199
flip3--_binary64_17132 flip--_binary64_17103 unswap-sqr_binary64_17096
div-inv_binary64_17125 *-commutative_binary64_17059
distribute-lft-out_binary64_17079
diff-log_binary64_17220 sub-neg_binary64_17121 cancel-sign-sub-inv_binary64_17094
Counts
4 → 218
Calls

4 calls:

28.0ms
(*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))
27.0ms
(*.f64 (/.f64 y (-.f64 2 y)) (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y))))
24.0ms
(-.f64 (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))))
22.0ms
(*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))
Compiler

Compiled 14321 to 10215 computations (28.7% saved)

series1.5s (7.1%)

Error
0.0b
Counts
4 → 42
Calls

4 calls:

612.0ms
(-.f64 (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y))) (*.f64 (/.f64 y (-.f64 2 y)) (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))))
332.0ms
(*.f64 (/.f64 y (-.f64 2 y)) (*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y))))
264.0ms
(*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))
246.0ms
(*.f64 (+.f64 (/.f64 x (-.f64 2 y)) 1) (/.f64 x (-.f64 2 y)))
Compiler

Compiled 4200 to 3097 computations (26.3% saved)

simplify1.5s (6.9%)

Algorithm
egg-herbie
Rules
521×*-commutative_binary64_17059
345×distribute-rgt-in_binary64_17078
339×distribute-lft-in_binary64_17077
241×associate-*l/_binary64_17071
236×cancel-sign-sub-inv_binary64_17094
232×distribute-rgt-neg-in_binary64_17086
205×associate-*r/_binary64_17070
165×distribute-lft-neg-in_binary64_17085
163×associate-*r*_binary64_17068
147×associate-/l*_binary64_17073
116×+-commutative_binary64_17058
104×associate-*l*_binary64_17069
97×sub-neg_binary64_17121
87×neg-sub0_binary64_17123
86×neg-mul-1_binary64_17124
84×times-frac_binary64_17134
66×distribute-lft-neg-out_binary64_17087
60×associate-/r*_binary64_17072
39×distribute-rgt-out--_binary64_17082
38×associate-+l+_binary64_17061
29×associate-/l/_binary64_17075
28×associate-+r+_binary64_17060
25×sqr-pow_binary64_17100
22×associate--l+_binary64_17065
20×associate--r+_binary64_17064
15×distribute-neg-in_binary64_17089
14×associate-/r/_binary64_17074
12×distribute-neg-frac_binary64_17092
11×pow-sqr_binary64_17101 swap-sqr_binary64_17095 distribute-rgt-out_binary64_17081
10×unpow3_binary64_17194 unswap-sqr_binary64_17096 distribute-rgt1-in_binary64_17084
*-rgt-identity_binary64_17118
log-prod_binary64_17214 exp-prod_binary64_17180 cube-prod_binary64_17156
log-div_binary64_17215 cube-mult_binary64_17158 cube-div_binary64_17157 difference-of-squares_binary64_17097 associate-+r-_binary64_17062
log-pow_binary64_17217 associate-+l-_binary64_17063
pow-plus_binary64_17191
unpow2_binary64_17193 exp-sum_binary64_17174 /-rgt-identity_binary64_17119 *-lft-identity_binary64_17117
pow-base-1_binary64_17188 div-exp_binary64_17179 cube-unmult_binary64_17165 mul-1-neg_binary64_17120 distribute-lft-out--_binary64_17080
rec-exp_binary64_17178 prod-exp_binary64_17177 1-exp_binary64_17172 div-sub_binary64_17133 *-inverses_binary64_17108 distribute-lft-out_binary64_17079 associate--r-_binary64_17067
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64_17391 erf-erfc_binary64_17390 erf-odd_binary64_17389 if-if-and-not_binary64_17388 if-if-and_binary64_17387 if-if-or-not_binary64_17386 if-if-or_binary64_17385 if-not_binary64_17384 if-same_binary64_17383 if-false_binary64_17382 if-true_binary64_17381 not-gte_binary64_17380 not-lte_binary64_17379 not-gt_binary64_17378 not-lt_binary64_17377 gte-same_binary64_17376 lte-same_binary64_17375 gt-same_binary64_17374 lt-same_binary64_17373 sinh---cosh_binary64_17320 sinh-+-cosh_binary64_17319 sinh-cosh_binary64_17318 tanh-def-c_binary64_17317 tanh-def-b_binary64_17316 tanh-def-a_binary64_17315 cosh-def_binary64_17314 sinh-def_binary64_17313 tan-neg_binary64_17260 cos-neg_binary64_17259 sin-neg_binary64_17258 tan-0_binary64_17257 cos-0_binary64_17256 sin-0_binary64_17255 hang-m-tan_binary64_17254 hang-p-tan_binary64_17253 hang-m0-tan_binary64_17252 hang-p0-tan_binary64_17251 hang-0m-tan_binary64_17250 hang-0p-tan_binary64_17249 tan-+PI/2_binary64_17248 tan-+PI_binary64_17247 tan-PI_binary64_17246 tan-PI/3_binary64_17245 tan-PI/4_binary64_17244 tan-PI/6_binary64_17243 cos-+PI/2_binary64_17242 cos-+PI_binary64_17241 cos-PI_binary64_17240 cos-PI/2_binary64_17239 cos-PI/3_binary64_17238 cos-PI/4_binary64_17237 cos-PI/6_binary64_17236 sin-+PI/2_binary64_17235 sin-+PI_binary64_17234 sin-PI_binary64_17233 sin-PI/2_binary64_17232 sin-PI/3_binary64_17231 sin-PI/4_binary64_17230 sin-PI/6_binary64_17229 sub-1-sin_binary64_17228 sub-1-cos_binary64_17227 -1-add-sin_binary64_17226 -1-add-cos_binary64_17225 1-sub-sin_binary64_17224 1-sub-cos_binary64_17223 cos-sin-sum_binary64_17222 log-E_binary64_17218 log-rec_binary64_17216 pow-base-0_binary64_17212 unpow1/3_binary64_17195 unpow1/2_binary64_17192 exp-to-pow_binary64_17190 unpow0_binary64_17187 unpow1_binary64_17186 unpow-1_binary64_17185 exp-lft-cube_binary64_17184 exp-lft-sqr_binary64_17183 exp-cbrt_binary64_17182 exp-sqrt_binary64_17181 exp-diff_binary64_17176 exp-neg_binary64_17175 e-exp-1_binary64_17173 exp-1-e_binary64_17171 exp-0_binary64_17170 rem-log-exp_binary64_17169 rem-exp-log_binary64_17168 cube-neg_binary64_17155 rem-3cbrt-rft_binary64_17154 rem-3cbrt-lft_binary64_17153 rem-cbrt-cube_binary64_17152 rem-cube-cbrt_binary64_17151 sqr-abs_binary64_17143 sqr-neg_binary64_17142 rem-sqrt-square_binary64_17141 rem-square-sqrt_binary64_17140 unsub-neg_binary64_17122 remove-double-neg_binary64_17116 sub0-neg_binary64_17115 --rgt-identity_binary64_17114 +-rgt-identity_binary64_17113 +-lft-identity_binary64_17112 mul0-rgt_binary64_17111 mul0-lft_binary64_17110 div0_binary64_17109 +-inverses_binary64_17107 lft-mult-inverse_binary64_17106 rgt-mult-inverse_binary64_17105 remove-double-div_binary64_17104 difference-of-sqr--1_binary64_17099 difference-of-sqr-1_binary64_17098 cancel-sign-sub_binary64_17093 distribute-frac-neg_binary64_17091 distribute-neg-out_binary64_17090 distribute-rgt-neg-out_binary64_17088 distribute-lft1-in_binary64_17083 count-2_binary64_17076 associate--l-_binary64_17066
Counts
260 → 788
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048913011
1157111562
2499911562

prune7.3s (33.6%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New7880788
Fresh000
Picked011
Done033
Total7884792
Error
0.0b
Counts
792 → 4
Compiler

Compiled 57683 to 40964 computations (29% saved)

regimes240.0ms (1.1%)

Accuracy

Total 0.0b remaining (98%)

Threshold costs 0.0b (98%)

Compiler

Compiled 2479 to 1774 computations (28.4% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_17058
sub-neg_binary64_17121
neg-mul-1_binary64_17124 neg-sub0_binary64_17123 *-commutative_binary64_17059
unsub-neg_binary64_17122 distribute-neg-in_binary64_17089
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same if-if-and-not_binary64_17388 if-if-and_binary64_17387 if-if-or-not_binary64_17386 if-if-or_binary64_17385 if-not_binary64_17384 if-same_binary64_17383 if-false_binary64_17382 if-true_binary64_17381 tan-0_binary64_17257 cos-0_binary64_17256 sin-0_binary64_17255 unpow1_binary64_17186 e-exp-1_binary64_17173 1-exp_binary64_17172 exp-1-e_binary64_17171 exp-0_binary64_17170 sqr-abs_binary64_17143 sqr-neg_binary64_17142 mul-1-neg_binary64_17120 /-rgt-identity_binary64_17119 *-rgt-identity_binary64_17118 *-lft-identity_binary64_17117 remove-double-neg_binary64_17116 sub0-neg_binary64_17115 --rgt-identity_binary64_17114 +-rgt-identity_binary64_17113 +-lft-identity_binary64_17112 cancel-sign-sub-inv_binary64_17094 cancel-sign-sub_binary64_17093 distribute-neg-frac_binary64_17092 distribute-frac-neg_binary64_17091 distribute-neg-out_binary64_17090 distribute-rgt-neg-out_binary64_17088 distribute-lft-neg-out_binary64_17087 distribute-rgt-neg-in_binary64_17086 distribute-lft-neg-in_binary64_17085
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11313
22413
33213
43613
53713
Proof
(/ f64 (- f64 h0 h1) (- f64 2 (+ f64 h0 h1)))

end0.0ms (0%)

sample1.4s (6.6%)

Algorithm
intervals
Results
217.0ms7999×body128valid
0.0msbody1024valid
Compiler

Compiled 853 to 611 computations (28.4% saved)

Profiling

Loading profile data...