Details

Time bar (total: 9.4s)

analyze35.0ms (0.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
50%50%0.1%4
50%50%0.1%5
74.9%25%0.1%6
74.9%25%0.1%7
87.4%12.5%0.1%8
87.4%12.5%0.1%9
93.7%6.2%0.1%10
93.7%6.2%0.1%11
96.8%3.1%0.1%12
96.8%3.1%0.1%13
98.3%1.6%0.1%14
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample15.0ms (0.2%)

Algorithm
intervals
Results
5.0ms231×body128valid
1.0msbody2048valid
1.0msbody1024valid
0.0msbody512valid
0.0msbody256valid
Compiler

Compiled 15 to 15 computations (0% saved)

simplify521.0ms (5.5%)

Algorithm
egg-herbie
Rules
868×exp-prod_binary64_26387
356×associate-/l/_binary64_26282
284×cube-div_binary64_26364
230×swap-sqr_binary64_26302
223×exp-sum_binary64_26381
194×*-commutative_binary64_26266
190×cube-prod_binary64_26363
174×distribute-rgt1-in_binary64_26291
171×associate-/r/_binary64_26281
156×unsub-neg_binary64_26329
141×sub-neg_binary64_26328
132×unpow3_binary64_26401
130×cube-mult_binary64_26365
120×distribute-neg-in_binary64_26296
113×exp-diff_binary64_26383
108×distribute-rgt-neg-out_binary64_26295
101×cancel-sign-sub-inv_binary64_26301
99×distribute-rgt-in_binary64_26285
93×distribute-rgt-neg-in_binary64_26293
86×distribute-lft-neg-in_binary64_26292 +-commutative_binary64_26265
82×pow-plus_binary64_26398
73×distribute-lft-neg-out_binary64_26294
69×distribute-neg-out_binary64_26297
67×exp-neg_binary64_26382
57×associate--r+_binary64_26271
53×distribute-lft-in_binary64_26284
50×div-sub_binary64_26340 distribute-frac-neg_binary64_26298
46×neg-mul-1_binary64_26331
45×associate--l+_binary64_26272 associate-+l-_binary64_26270
43×associate-+l+_binary64_26268
40×associate--l-_binary64_26273
39×associate--r-_binary64_26274 associate-+r+_binary64_26267
38×neg-sub0_binary64_26330
36×distribute-neg-frac_binary64_26299
33×associate-+r-_binary64_26269
31×associate-*r*_binary64_26275
28×distribute-rgt-out--_binary64_26289
27×associate-/l*_binary64_26280
24×distribute-rgt-out_binary64_26288
21×pow-sqr_binary64_26308 sqr-pow_binary64_26307
19×unswap-sqr_binary64_26303
18×exp-lft-sqr_binary64_26390
17×difference-of-squares_binary64_26304
16×cube-unmult_binary64_26372 associate-/r*_binary64_26279
14×pow-base-1_binary64_26395 sub0-neg_binary64_26322
12×distribute-lft-out_binary64_26286
11×exp-sqrt_binary64_26388
10×times-frac_binary64_26341 +-lft-identity_binary64_26319 distribute-lft-out--_binary64_26287
sqr-neg_binary64_26349 remove-double-neg_binary64_26323 --rgt-identity_binary64_26321
/-rgt-identity_binary64_26326 associate-*l*_binary64_26276
div0_binary64_26316
*-rgt-identity_binary64_26325 count-2_binary64_26283
*-lft-identity_binary64_26324 mul0-rgt_binary64_26318 +-inverses_binary64_26314
+-rgt-identity_binary64_26320 mul0-lft_binary64_26317 difference-of-sqr--1_binary64_26306 associate-*r/_binary64_26277
distribute-lft1-in_binary64_26290 associate-*l/_binary64_26278
*-inverses_binary64_26315
pow-base-0_binary64_26419 1-exp_binary64_26379 exp-1-e_binary64_26378 cube-neg_binary64_26362 rem-sqrt-square_binary64_26348
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_26598 erf-erfc_binary64_26597 erf-odd_binary64_26596 if-if-and-not_binary64_26595 if-if-and_binary64_26594 if-if-or-not_binary64_26593 if-if-or_binary64_26592 if-not_binary64_26591 if-same_binary64_26590 if-false_binary64_26589 if-true_binary64_26588 not-gte_binary64_26587 not-lte_binary64_26586 not-gt_binary64_26585 not-lt_binary64_26584 gte-same_binary64_26583 lte-same_binary64_26582 gt-same_binary64_26581 lt-same_binary64_26580 sinh---cosh_binary64_26527 sinh-+-cosh_binary64_26526 sinh-cosh_binary64_26525 tanh-def-c_binary64_26524 tanh-def-b_binary64_26523 tanh-def-a_binary64_26522 cosh-def_binary64_26521 sinh-def_binary64_26520 tan-neg_binary64_26467 cos-neg_binary64_26466 sin-neg_binary64_26465 tan-0_binary64_26464 cos-0_binary64_26463 sin-0_binary64_26462 hang-m-tan_binary64_26461 hang-p-tan_binary64_26460 hang-m0-tan_binary64_26459 hang-p0-tan_binary64_26458 hang-0m-tan_binary64_26457 hang-0p-tan_binary64_26456 tan-+PI/2_binary64_26455 tan-+PI_binary64_26454 tan-PI_binary64_26453 tan-PI/3_binary64_26452 tan-PI/4_binary64_26451 tan-PI/6_binary64_26450 cos-+PI/2_binary64_26449 cos-+PI_binary64_26448 cos-PI_binary64_26447 cos-PI/2_binary64_26446 cos-PI/3_binary64_26445 cos-PI/4_binary64_26444 cos-PI/6_binary64_26443 sin-+PI/2_binary64_26442 sin-+PI_binary64_26441 sin-PI_binary64_26440 sin-PI/2_binary64_26439 sin-PI/3_binary64_26438 sin-PI/4_binary64_26437 sin-PI/6_binary64_26436 sub-1-sin_binary64_26435 sub-1-cos_binary64_26434 -1-add-sin_binary64_26433 -1-add-cos_binary64_26432 1-sub-sin_binary64_26431 1-sub-cos_binary64_26430 cos-sin-sum_binary64_26429 log-E_binary64_26425 log-pow_binary64_26424 log-rec_binary64_26423 log-div_binary64_26422 log-prod_binary64_26421 unpow1/3_binary64_26402 unpow2_binary64_26400 unpow1/2_binary64_26399 exp-to-pow_binary64_26397 unpow0_binary64_26394 unpow1_binary64_26393 unpow-1_binary64_26392 exp-lft-cube_binary64_26391 exp-cbrt_binary64_26389 div-exp_binary64_26386 rec-exp_binary64_26385 prod-exp_binary64_26384 e-exp-1_binary64_26380 exp-0_binary64_26377 rem-log-exp_binary64_26376 rem-exp-log_binary64_26375 rem-3cbrt-rft_binary64_26361 rem-3cbrt-lft_binary64_26360 rem-cbrt-cube_binary64_26359 rem-cube-cbrt_binary64_26358 sqr-abs_binary64_26350 rem-square-sqrt_binary64_26347 mul-1-neg_binary64_26327 lft-mult-inverse_binary64_26313 rgt-mult-inverse_binary64_26312 remove-double-div_binary64_26311 difference-of-sqr-1_binary64_26305 cancel-sign-sub_binary64_26300
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11310
22410
34210
47710
513810
622910
754810
8172910
9342510

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
0.1b
Counts
2 → 1
Compiler

Compiled 14 to 12 computations (14.3% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

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

rewrite23.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
add-log-exp_binary64_26374 *-un-lft-identity_binary64_26335
sum-log_binary64_26426 pow1_binary64_26396 add-exp-log_binary64_26373 add-cbrt-cube_binary64_26371 add-cube-cbrt_binary64_26370 add-sqr-sqrt_binary64_26357 flip3-+_binary64_26338 flip-+_binary64_26309 distribute-lft-out_binary64_26286 div-sub_binary64_26340 associate-+r-_binary64_26269 +-commutative_binary64_26265
Counts
1 → 13
Calls

1 calls:

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

Compiled 196 to 107 computations (45.4% saved)

series135.0ms (1.4%)

Error
0.1b
Counts
1 → 12
Calls

1 calls:

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

Compiled 162 to 152 computations (6.2% saved)

simplify98.0ms (1%)

Algorithm
egg-herbie
Rules
461×distribute-rgt-in_binary64_26285
433×distribute-lft-in_binary64_26284
429×associate-/l*_binary64_26280
378×unsub-neg_binary64_26329
261×div-sub_binary64_26340
238×distribute-rgt-neg-out_binary64_26295
229×distribute-rgt-out_binary64_26288
212×distribute-lft-neg-out_binary64_26294
211×cancel-sign-sub-inv_binary64_26301
181×times-frac_binary64_26341
140×sub-neg_binary64_26328
138×associate-/l/_binary64_26282
124×associate-*l/_binary64_26278
123×distribute-neg-in_binary64_26296
122×associate-+r+_binary64_26267
121×associate-+l+_binary64_26268
108×associate-*l*_binary64_26276
103×associate-*r*_binary64_26275
99×associate-/r/_binary64_26281
95×associate-*r/_binary64_26277
82×neg-sub0_binary64_26330
59×distribute-rgt-neg-in_binary64_26293
58×neg-mul-1_binary64_26331
51×distribute-lft-neg-in_binary64_26292
49×distribute-frac-neg_binary64_26298
44×unswap-sqr_binary64_26303 *-commutative_binary64_26266
42×sqr-pow_binary64_26307
38×distribute-lft-out_binary64_26286 +-commutative_binary64_26265
35×associate-+r-_binary64_26269
33×exp-sum_binary64_26381 distribute-neg-frac_binary64_26299 distribute-neg-out_binary64_26297
28×exp-diff_binary64_26383
27×pow-sqr_binary64_26308 associate-+l-_binary64_26270
24×distribute-rgt-out--_binary64_26289
21×remove-double-neg_binary64_26323
20×associate--r+_binary64_26271
19×associate-/r*_binary64_26279
17×exp-prod_binary64_26387
14×+-rgt-identity_binary64_26320 mul0-rgt_binary64_26318 mul0-lft_binary64_26317
11×sub0-neg_binary64_26322 associate--r-_binary64_26274
10×div0_binary64_26316
associate--l+_binary64_26272
prod-exp_binary64_26384 cube-unmult_binary64_26372
--rgt-identity_binary64_26321
unpow3_binary64_26401 exp-sqrt_binary64_26388 cube-mult_binary64_26365 swap-sqr_binary64_26302 associate--l-_binary64_26273
sqr-neg_binary64_26349 distribute-lft-out--_binary64_26287 count-2_binary64_26283
pow-plus_binary64_26398 exp-neg_binary64_26382 difference-of-squares_binary64_26304
div-exp_binary64_26386 1-exp_binary64_26379 cube-div_binary64_26364 cube-neg_binary64_26362 rem-sqrt-square_binary64_26348 mul-1-neg_binary64_26327 *-inverses_binary64_26315 distribute-rgt1-in_binary64_26291
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_26598 erf-erfc_binary64_26597 erf-odd_binary64_26596 if-if-and-not_binary64_26595 if-if-and_binary64_26594 if-if-or-not_binary64_26593 if-if-or_binary64_26592 if-not_binary64_26591 if-same_binary64_26590 if-false_binary64_26589 if-true_binary64_26588 not-gte_binary64_26587 not-lte_binary64_26586 not-gt_binary64_26585 not-lt_binary64_26584 gte-same_binary64_26583 lte-same_binary64_26582 gt-same_binary64_26581 lt-same_binary64_26580 sinh---cosh_binary64_26527 sinh-+-cosh_binary64_26526 sinh-cosh_binary64_26525 tanh-def-c_binary64_26524 tanh-def-b_binary64_26523 tanh-def-a_binary64_26522 cosh-def_binary64_26521 sinh-def_binary64_26520 tan-neg_binary64_26467 cos-neg_binary64_26466 sin-neg_binary64_26465 tan-0_binary64_26464 cos-0_binary64_26463 sin-0_binary64_26462 hang-m-tan_binary64_26461 hang-p-tan_binary64_26460 hang-m0-tan_binary64_26459 hang-p0-tan_binary64_26458 hang-0m-tan_binary64_26457 hang-0p-tan_binary64_26456 tan-+PI/2_binary64_26455 tan-+PI_binary64_26454 tan-PI_binary64_26453 tan-PI/3_binary64_26452 tan-PI/4_binary64_26451 tan-PI/6_binary64_26450 cos-+PI/2_binary64_26449 cos-+PI_binary64_26448 cos-PI_binary64_26447 cos-PI/2_binary64_26446 cos-PI/3_binary64_26445 cos-PI/4_binary64_26444 cos-PI/6_binary64_26443 sin-+PI/2_binary64_26442 sin-+PI_binary64_26441 sin-PI_binary64_26440 sin-PI/2_binary64_26439 sin-PI/3_binary64_26438 sin-PI/4_binary64_26437 sin-PI/6_binary64_26436 sub-1-sin_binary64_26435 sub-1-cos_binary64_26434 -1-add-sin_binary64_26433 -1-add-cos_binary64_26432 1-sub-sin_binary64_26431 1-sub-cos_binary64_26430 cos-sin-sum_binary64_26429 log-E_binary64_26425 log-pow_binary64_26424 log-rec_binary64_26423 log-div_binary64_26422 log-prod_binary64_26421 pow-base-0_binary64_26419 unpow1/3_binary64_26402 unpow2_binary64_26400 unpow1/2_binary64_26399 exp-to-pow_binary64_26397 pow-base-1_binary64_26395 unpow0_binary64_26394 unpow1_binary64_26393 unpow-1_binary64_26392 exp-lft-cube_binary64_26391 exp-lft-sqr_binary64_26390 exp-cbrt_binary64_26389 rec-exp_binary64_26385 e-exp-1_binary64_26380 exp-1-e_binary64_26378 exp-0_binary64_26377 rem-log-exp_binary64_26376 rem-exp-log_binary64_26375 cube-prod_binary64_26363 rem-3cbrt-rft_binary64_26361 rem-3cbrt-lft_binary64_26360 rem-cbrt-cube_binary64_26359 rem-cube-cbrt_binary64_26358 sqr-abs_binary64_26350 rem-square-sqrt_binary64_26347 /-rgt-identity_binary64_26326 *-rgt-identity_binary64_26325 *-lft-identity_binary64_26324 +-lft-identity_binary64_26319 +-inverses_binary64_26314 lft-mult-inverse_binary64_26313 rgt-mult-inverse_binary64_26312 remove-double-div_binary64_26311 difference-of-sqr--1_binary64_26306 difference-of-sqr-1_binary64_26305 cancel-sign-sub_binary64_26300 distribute-lft1-in_binary64_26290
Counts
25 → 17
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037306
1104285
2249285
3711285
42726285

prune21.0ms (0.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New14317
Fresh000
Picked011
Done000
Total14418
Error
0.1b
Counts
18 → 4
Compiler

Compiled 346 to 194 computations (43.9% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

0.0b
(-.f64 (*.f64 3/2 x) (*.f64 y 1/2))

rewrite17.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
add-log-exp_binary64_26374
diff-log_binary64_26427 pow1_binary64_26396 add-exp-log_binary64_26373 add-cbrt-cube_binary64_26371 add-cube-cbrt_binary64_26370 add-sqr-sqrt_binary64_26357 flip3--_binary64_26339 *-un-lft-identity_binary64_26335 sub-neg_binary64_26328 flip--_binary64_26310 cancel-sign-sub-inv_binary64_26301
Counts
1 → 12
Calls

1 calls:

4.0ms
(-.f64 (*.f64 3/2 x) (*.f64 y 1/2))
Compiler

Compiled 187 to 145 computations (22.5% saved)

series137.0ms (1.5%)

Error
0.1b
Counts
1 → 12
Calls

1 calls:

128.0ms
(-.f64 (*.f64 3/2 x) (*.f64 y 1/2))
Compiler

Compiled 162 to 152 computations (6.2% saved)

simplify135.0ms (1.4%)

Algorithm
egg-herbie
Rules
961×unsub-neg_binary64_26329
472×times-frac_binary64_26341
235×distribute-rgt-neg-in_binary64_26293
224×neg-sub0_binary64_26330
217×neg-mul-1_binary64_26331
215×exp-prod_binary64_26387
212×distribute-rgt-in_binary64_26285
197×distribute-lft-neg-in_binary64_26292
180×distribute-lft-in_binary64_26284
177×distribute-lft-neg-out_binary64_26294
168×associate-*l*_binary64_26276 *-commutative_binary64_26266
164×cancel-sign-sub-inv_binary64_26301
142×distribute-rgt-neg-out_binary64_26295
132×unswap-sqr_binary64_26303
119×associate-*r*_binary64_26275
111×distribute-rgt-out_binary64_26288
89×sqr-pow_binary64_26307
81×distribute-neg-in_binary64_26296
80×exp-sum_binary64_26381
77×associate-/l*_binary64_26280
70×difference-of-squares_binary64_26304
63×+-commutative_binary64_26265
54×pow-sqr_binary64_26308
53×distribute-neg-out_binary64_26297
49×sub-neg_binary64_26328
44×associate-+l-_binary64_26270
42×associate-/r*_binary64_26279
38×associate-*r/_binary64_26277
35×associate-/l/_binary64_26282
32×mul0-rgt_binary64_26318 mul0-lft_binary64_26317
29×associate-+r+_binary64_26267
24×exp-diff_binary64_26383
23×associate-*l/_binary64_26278
21×swap-sqr_binary64_26302 associate--r+_binary64_26271 associate-+l+_binary64_26268
17×associate-+r-_binary64_26269
16×cube-unmult_binary64_26372 cube-prod_binary64_26363
13×sqr-neg_binary64_26349
12×exp-neg_binary64_26382 associate-/r/_binary64_26281
11×pow-plus_binary64_26398 div-sub_binary64_26340 distribute-rgt1-in_binary64_26291 associate--l+_binary64_26272
10×+-rgt-identity_binary64_26320
mul-1-neg_binary64_26327 distribute-lft-out_binary64_26286
unpow3_binary64_26401
cube-mult_binary64_26365 sub0-neg_binary64_26322
unpow1/2_binary64_26399
cube-neg_binary64_26362 distribute-lft1-in_binary64_26290 distribute-rgt-out--_binary64_26289
log-prod_binary64_26421 div-exp_binary64_26386 rem-sqrt-square_binary64_26348 --rgt-identity_binary64_26321 distribute-frac-neg_binary64_26298
prod-exp_binary64_26384 1-exp_binary64_26379 *-rgt-identity_binary64_26325 remove-double-neg_binary64_26323 +-lft-identity_binary64_26319 *-inverses_binary64_26315 cancel-sign-sub_binary64_26300 count-2_binary64_26283
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_26598 erf-erfc_binary64_26597 erf-odd_binary64_26596 if-if-and-not_binary64_26595 if-if-and_binary64_26594 if-if-or-not_binary64_26593 if-if-or_binary64_26592 if-not_binary64_26591 if-same_binary64_26590 if-false_binary64_26589 if-true_binary64_26588 not-gte_binary64_26587 not-lte_binary64_26586 not-gt_binary64_26585 not-lt_binary64_26584 gte-same_binary64_26583 lte-same_binary64_26582 gt-same_binary64_26581 lt-same_binary64_26580 sinh---cosh_binary64_26527 sinh-+-cosh_binary64_26526 sinh-cosh_binary64_26525 tanh-def-c_binary64_26524 tanh-def-b_binary64_26523 tanh-def-a_binary64_26522 cosh-def_binary64_26521 sinh-def_binary64_26520 tan-neg_binary64_26467 cos-neg_binary64_26466 sin-neg_binary64_26465 tan-0_binary64_26464 cos-0_binary64_26463 sin-0_binary64_26462 hang-m-tan_binary64_26461 hang-p-tan_binary64_26460 hang-m0-tan_binary64_26459 hang-p0-tan_binary64_26458 hang-0m-tan_binary64_26457 hang-0p-tan_binary64_26456 tan-+PI/2_binary64_26455 tan-+PI_binary64_26454 tan-PI_binary64_26453 tan-PI/3_binary64_26452 tan-PI/4_binary64_26451 tan-PI/6_binary64_26450 cos-+PI/2_binary64_26449 cos-+PI_binary64_26448 cos-PI_binary64_26447 cos-PI/2_binary64_26446 cos-PI/3_binary64_26445 cos-PI/4_binary64_26444 cos-PI/6_binary64_26443 sin-+PI/2_binary64_26442 sin-+PI_binary64_26441 sin-PI_binary64_26440 sin-PI/2_binary64_26439 sin-PI/3_binary64_26438 sin-PI/4_binary64_26437 sin-PI/6_binary64_26436 sub-1-sin_binary64_26435 sub-1-cos_binary64_26434 -1-add-sin_binary64_26433 -1-add-cos_binary64_26432 1-sub-sin_binary64_26431 1-sub-cos_binary64_26430 cos-sin-sum_binary64_26429 log-E_binary64_26425 log-pow_binary64_26424 log-rec_binary64_26423 log-div_binary64_26422 pow-base-0_binary64_26419 unpow1/3_binary64_26402 unpow2_binary64_26400 exp-to-pow_binary64_26397 pow-base-1_binary64_26395 unpow0_binary64_26394 unpow1_binary64_26393 unpow-1_binary64_26392 exp-lft-cube_binary64_26391 exp-lft-sqr_binary64_26390 exp-cbrt_binary64_26389 exp-sqrt_binary64_26388 rec-exp_binary64_26385 e-exp-1_binary64_26380 exp-1-e_binary64_26378 exp-0_binary64_26377 rem-log-exp_binary64_26376 rem-exp-log_binary64_26375 cube-div_binary64_26364 rem-3cbrt-rft_binary64_26361 rem-3cbrt-lft_binary64_26360 rem-cbrt-cube_binary64_26359 rem-cube-cbrt_binary64_26358 sqr-abs_binary64_26350 rem-square-sqrt_binary64_26347 /-rgt-identity_binary64_26326 *-lft-identity_binary64_26324 div0_binary64_26316 +-inverses_binary64_26314 lft-mult-inverse_binary64_26313 rgt-mult-inverse_binary64_26312 remove-double-div_binary64_26311 difference-of-sqr--1_binary64_26306 difference-of-sqr-1_binary64_26305 distribute-neg-frac_binary64_26299 distribute-lft-out--_binary64_26287 associate--r-_binary64_26274 associate--l-_binary64_26273
Counts
24 → 18
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
036304
1103283
2300283
3815283
41769283
53251283

prune22.0ms (0.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New17118
Fresh112
Picked101
Done011
Total19322
Error
0.1b
Counts
22 → 3
Compiler

Compiled 340 to 257 computations (24.4% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

rewrite332.0ms (3.5%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
108×*-un-lft-identity_binary64_26335
92×times-frac_binary64_26341
90×add-sqr-sqrt_binary64_26357
54×add-cube-cbrt_binary64_26370
25×swap-sqr_binary64_26302
19×associate-*l*_binary64_26276 associate-*r*_binary64_26275
18×add-exp-log_binary64_26373 add-cbrt-cube_binary64_26371 difference-of-squares_binary64_26304 distribute-lft-out--_binary64_26287
11×pow1_binary64_26396
add-log-exp_binary64_26374
distribute-lft-out_binary64_26286
div-exp_binary64_26386 cbrt-undiv_binary64_26369 div-inv_binary64_26332
associate-/l*_binary64_26280 associate-/r*_binary64_26279 prod-exp_binary64_26384 cbrt-unprod_binary64_26368 unswap-sqr_binary64_26303
div-sub_binary64_26340 flip3--_binary64_26339 associate-/l/_binary64_26282 flip--_binary64_26310 flip3-+_binary64_26338 associate-/r/_binary64_26281 flip-+_binary64_26309
frac-2neg_binary64_26346 clear-num_binary64_26334 diff-log_binary64_26427 sub-neg_binary64_26328 cancel-sign-sub-inv_binary64_26301 pow2_binary64_26416 pow-prod-down_binary64_26406 pow-prod-up_binary64_26405 pow-plus_binary64_26398 frac-times_binary64_26345 pow-sqr_binary64_26308 associate-*l/_binary64_26278 associate-*r/_binary64_26277 *-commutative_binary64_26266 sum-log_binary64_26426 associate-+r-_binary64_26269 +-commutative_binary64_26265
Counts
4 → 158
Calls

4 calls:

22.0ms
(*.f64 (/.f64 (-.f64 x y) 2) (/.f64 (-.f64 x y) 2))
15.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 (/.f64 (-.f64 x y) 2) (/.f64 (-.f64 x y) 2))) (+.f64 x (/.f64 (-.f64 y x) 2)))
9.0ms
(+.f64 x (/.f64 (-.f64 y x) 2))
4.0ms
(-.f64 (*.f64 x x) (*.f64 (/.f64 (-.f64 x y) 2) (/.f64 (-.f64 x y) 2)))
Compiler

Compiled 5736 to 2800 computations (51.2% saved)

series1.1s (11.7%)

Error
0.1b
Counts
4 → 60
Calls

4 calls:

385.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 (/.f64 (-.f64 x y) 2) (/.f64 (-.f64 x y) 2))) (+.f64 x (/.f64 (-.f64 y x) 2)))
341.0ms
(-.f64 (*.f64 x x) (*.f64 (/.f64 (-.f64 x y) 2) (/.f64 (-.f64 x y) 2)))
202.0ms
(*.f64 (/.f64 (-.f64 x y) 2) (/.f64 (-.f64 x y) 2))
121.0ms
(+.f64 x (/.f64 (-.f64 y x) 2))
Compiler

Compiled 2640 to 1830 computations (30.7% saved)

simplify933.0ms (9.9%)

Algorithm
egg-herbie
Rules
774×distribute-rgt-in_binary64_26285
238×div-sub_binary64_26340
203×associate-/l*_binary64_26280
182×associate-*r/_binary64_26277
173×associate-*l/_binary64_26278
157×associate-*r*_binary64_26275
149×associate-*l*_binary64_26276
148×times-frac_binary64_26341
145×cancel-sign-sub-inv_binary64_26301
133×associate-/r*_binary64_26279
116×distribute-neg-frac_binary64_26299
101×distribute-rgt-neg-in_binary64_26293
100×unswap-sqr_binary64_26303
95×*-commutative_binary64_26266
90×sub-neg_binary64_26328
84×distribute-lft-neg-in_binary64_26292
78×associate-/l/_binary64_26282
72×distribute-lft-in_binary64_26284
62×/-rgt-identity_binary64_26326
55×exp-prod_binary64_26387 neg-mul-1_binary64_26331 neg-sub0_binary64_26330
52×distribute-lft-neg-out_binary64_26294
49×sqr-pow_binary64_26307
40×log-prod_binary64_26421 *-rgt-identity_binary64_26325 swap-sqr_binary64_26302
38×cube-prod_binary64_26363 +-commutative_binary64_26265
35×distribute-rgt-neg-out_binary64_26295 distribute-rgt-out_binary64_26288
31×distribute-neg-in_binary64_26296
28×*-lft-identity_binary64_26324 associate-/r/_binary64_26281
27×log-div_binary64_26422 cube-div_binary64_26364
22×pow-sqr_binary64_26308
18×exp-sum_binary64_26381
17×div-exp_binary64_26386 prod-exp_binary64_26384 difference-of-squares_binary64_26304
16×exp-sqrt_binary64_26388
14×exp-diff_binary64_26383 cube-unmult_binary64_26372
12×pow-plus_binary64_26398
unpow3_binary64_26401
distribute-rgt-out--_binary64_26289
cube-mult_binary64_26365 rem-sqrt-square_binary64_26348 distribute-lft-out_binary64_26286 associate-+r-_binary64_26269
associate--r-_binary64_26274 associate-+l-_binary64_26270 associate-+l+_binary64_26268
rec-exp_binary64_26385 unsub-neg_binary64_26329 associate--l+_binary64_26272
distribute-lft-out--_binary64_26287 associate--r+_binary64_26271
log-pow_binary64_26424 log-rec_binary64_26423 unpow2_binary64_26400 unpow1_binary64_26393 rem-3cbrt-rft_binary64_26361 rem-3cbrt-lft_binary64_26360 rem-square-sqrt_binary64_26347 remove-double-neg_binary64_26323 +-rgt-identity_binary64_26320 count-2_binary64_26283 associate-+r+_binary64_26267
exp-lft-sqr_binary64_26390 1-exp_binary64_26379 exp-1-e_binary64_26378 rem-log-exp_binary64_26376 *-inverses_binary64_26315 distribute-frac-neg_binary64_26298 distribute-rgt1-in_binary64_26291 distribute-lft1-in_binary64_26290 associate--l-_binary64_26273
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_26598 erf-erfc_binary64_26597 erf-odd_binary64_26596 if-if-and-not_binary64_26595 if-if-and_binary64_26594 if-if-or-not_binary64_26593 if-if-or_binary64_26592 if-not_binary64_26591 if-same_binary64_26590 if-false_binary64_26589 if-true_binary64_26588 not-gte_binary64_26587 not-lte_binary64_26586 not-gt_binary64_26585 not-lt_binary64_26584 gte-same_binary64_26583 lte-same_binary64_26582 gt-same_binary64_26581 lt-same_binary64_26580 sinh---cosh_binary64_26527 sinh-+-cosh_binary64_26526 sinh-cosh_binary64_26525 tanh-def-c_binary64_26524 tanh-def-b_binary64_26523 tanh-def-a_binary64_26522 cosh-def_binary64_26521 sinh-def_binary64_26520 tan-neg_binary64_26467 cos-neg_binary64_26466 sin-neg_binary64_26465 tan-0_binary64_26464 cos-0_binary64_26463 sin-0_binary64_26462 hang-m-tan_binary64_26461 hang-p-tan_binary64_26460 hang-m0-tan_binary64_26459 hang-p0-tan_binary64_26458 hang-0m-tan_binary64_26457 hang-0p-tan_binary64_26456 tan-+PI/2_binary64_26455 tan-+PI_binary64_26454 tan-PI_binary64_26453 tan-PI/3_binary64_26452 tan-PI/4_binary64_26451 tan-PI/6_binary64_26450 cos-+PI/2_binary64_26449 cos-+PI_binary64_26448 cos-PI_binary64_26447 cos-PI/2_binary64_26446 cos-PI/3_binary64_26445 cos-PI/4_binary64_26444 cos-PI/6_binary64_26443 sin-+PI/2_binary64_26442 sin-+PI_binary64_26441 sin-PI_binary64_26440 sin-PI/2_binary64_26439 sin-PI/3_binary64_26438 sin-PI/4_binary64_26437 sin-PI/6_binary64_26436 sub-1-sin_binary64_26435 sub-1-cos_binary64_26434 -1-add-sin_binary64_26433 -1-add-cos_binary64_26432 1-sub-sin_binary64_26431 1-sub-cos_binary64_26430 cos-sin-sum_binary64_26429 log-E_binary64_26425 pow-base-0_binary64_26419 unpow1/3_binary64_26402 unpow1/2_binary64_26399 exp-to-pow_binary64_26397 pow-base-1_binary64_26395 unpow0_binary64_26394 unpow-1_binary64_26392 exp-lft-cube_binary64_26391 exp-cbrt_binary64_26389 exp-neg_binary64_26382 e-exp-1_binary64_26380 exp-0_binary64_26377 rem-exp-log_binary64_26375 cube-neg_binary64_26362 rem-cbrt-cube_binary64_26359 rem-cube-cbrt_binary64_26358 sqr-abs_binary64_26350 sqr-neg_binary64_26349 mul-1-neg_binary64_26327 sub0-neg_binary64_26322 --rgt-identity_binary64_26321 +-lft-identity_binary64_26319 mul0-rgt_binary64_26318 mul0-lft_binary64_26317 div0_binary64_26316 +-inverses_binary64_26314 lft-mult-inverse_binary64_26313 rgt-mult-inverse_binary64_26312 remove-double-div_binary64_26311 difference-of-sqr--1_binary64_26306 difference-of-sqr-1_binary64_26305 cancel-sign-sub_binary64_26300 distribute-neg-out_binary64_26297
Counts
218 → 578
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02535666
17515221
228584968

prune1.3s (13.9%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New5744578
Fresh011
Picked011
Done011
Total5747581
Error
0.0b
Counts
581 → 7
Compiler

Compiled 20666 to 10410 computations (49.6% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

rewrite295.0ms (3.1%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
36×cbrt-prod_binary64_26366
35×*-un-lft-identity_binary64_26335
23×add-sqr-sqrt_binary64_26357
18×cbrt-div_binary64_26367
15×add-cube-cbrt_binary64_26370
11×pow1_binary64_26396
pow1/3_binary64_26417 flip3-+_binary64_26338 flip-+_binary64_26309 distribute-lft-out_binary64_26286 swap-sqr_binary64_26302
associate-*l*_binary64_26276 associate-*r*_binary64_26275
add-exp-log_binary64_26373
add-log-exp_binary64_26374 add-cbrt-cube_binary64_26371 frac-times_binary64_26345 unswap-sqr_binary64_26303
pow-prod-down_binary64_26406 pow-prod-up_binary64_26405 pow-sqr_binary64_26308 associate-*l/_binary64_26278 associate-*r/_binary64_26277
pow2_binary64_26416 pow-plus_binary64_26398 prod-exp_binary64_26384 cbrt-unprod_binary64_26368 *-commutative_binary64_26266
Counts
4 → 95
Calls

4 calls:

23.0ms
(*.f64 (cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2))) (cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2))))
12.0ms
(cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2)))
9.0ms
(cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2)))
9.0ms
(cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2)))
Compiler

Compiled 5153 to 2820 computations (45.3% saved)

series834.0ms (8.8%)

Error
0.0b
Counts
4 → 42
Calls

4 calls:

220.0ms
(*.f64 (cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2))) (cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2))))
183.0ms
(cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2)))
172.0ms
(cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2)))
169.0ms
(cbrt.f64 (+.f64 x (/.f64 (-.f64 y x) 2)))
Compiler

Compiled 5584 to 3934 computations (29.5% saved)

simplify1.1s (11.9%)

Algorithm
egg-herbie
Rules
412×associate-*l*_binary64_26276
376×associate-*r*_binary64_26275
324×exp-prod_binary64_26387
204×div-sub_binary64_26340
184×unswap-sqr_binary64_26303
155×*-commutative_binary64_26266
152×sqr-pow_binary64_26307
132×distribute-rgt-in_binary64_26285
116×exp-sum_binary64_26381
114×distribute-lft-in_binary64_26284
110×times-frac_binary64_26341 sub-neg_binary64_26328
105×associate-*l/_binary64_26278
104×unsub-neg_binary64_26329 associate-/r*_binary64_26279
96×swap-sqr_binary64_26302
92×associate-/l*_binary64_26280
86×log-prod_binary64_26421
73×pow-sqr_binary64_26308
68×cube-prod_binary64_26363
65×associate-*r/_binary64_26277
61×associate-/r/_binary64_26281
59×neg-sub0_binary64_26330
55×exp-diff_binary64_26383
50×log-div_binary64_26422 neg-mul-1_binary64_26331
45×cancel-sign-sub-inv_binary64_26301
39×+-commutative_binary64_26265
35×exp-to-pow_binary64_26397 cube-div_binary64_26364 distribute-rgt-neg-in_binary64_26293
34×exp-lft-sqr_binary64_26390
33×*-rgt-identity_binary64_26325 *-lft-identity_binary64_26324
32×distribute-lft-neg-in_binary64_26292
31×exp-sqrt_binary64_26388
26×distribute-lft-neg-out_binary64_26294
22×/-rgt-identity_binary64_26326
20×associate-+r-_binary64_26269
19×cube-unmult_binary64_26372
18×exp-neg_binary64_26382 distribute-rgt-neg-out_binary64_26295
17×pow-plus_binary64_26398
16×unpow1/3_binary64_26402 associate-+l-_binary64_26270
15×distribute-neg-frac_binary64_26299
14×distribute-neg-in_binary64_26296 associate-/l/_binary64_26282 associate-+l+_binary64_26268
12×sub0-neg_binary64_26322 associate--r+_binary64_26271
10×+-rgt-identity_binary64_26320 associate--r-_binary64_26274
log-pow_binary64_26424 remove-double-neg_binary64_26323 distribute-rgt-out_binary64_26288 associate-+r+_binary64_26267
rem-exp-log_binary64_26375
log-rec_binary64_26423 unpow3_binary64_26401 rem-sqrt-square_binary64_26348
cube-mult_binary64_26365 difference-of-squares_binary64_26304 count-2_binary64_26283
unpow2_binary64_26400 mul0-lft_binary64_26317 distribute-rgt-out--_binary64_26289
unpow1_binary64_26393 rem-3cbrt-lft_binary64_26360 --rgt-identity_binary64_26321 distribute-lft-out_binary64_26286 associate--l+_binary64_26272
pow-base-1_binary64_26395 prod-exp_binary64_26384 1-exp_binary64_26379 exp-1-e_binary64_26378 rem-log-exp_binary64_26376 rem-3cbrt-rft_binary64_26361 rem-cbrt-cube_binary64_26359 sqr-neg_binary64_26349 rem-square-sqrt_binary64_26347 mul0-rgt_binary64_26318 *-inverses_binary64_26315 distribute-lft1-in_binary64_26290 associate--l-_binary64_26273
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_26598 erf-erfc_binary64_26597 erf-odd_binary64_26596 if-if-and-not_binary64_26595 if-if-and_binary64_26594 if-if-or-not_binary64_26593 if-if-or_binary64_26592 if-not_binary64_26591 if-same_binary64_26590 if-false_binary64_26589 if-true_binary64_26588 not-gte_binary64_26587 not-lte_binary64_26586 not-gt_binary64_26585 not-lt_binary64_26584 gte-same_binary64_26583 lte-same_binary64_26582 gt-same_binary64_26581 lt-same_binary64_26580 sinh---cosh_binary64_26527 sinh-+-cosh_binary64_26526 sinh-cosh_binary64_26525 tanh-def-c_binary64_26524 tanh-def-b_binary64_26523 tanh-def-a_binary64_26522 cosh-def_binary64_26521 sinh-def_binary64_26520 tan-neg_binary64_26467 cos-neg_binary64_26466 sin-neg_binary64_26465 tan-0_binary64_26464 cos-0_binary64_26463 sin-0_binary64_26462 hang-m-tan_binary64_26461 hang-p-tan_binary64_26460 hang-m0-tan_binary64_26459 hang-p0-tan_binary64_26458 hang-0m-tan_binary64_26457 hang-0p-tan_binary64_26456 tan-+PI/2_binary64_26455 tan-+PI_binary64_26454 tan-PI_binary64_26453 tan-PI/3_binary64_26452 tan-PI/4_binary64_26451 tan-PI/6_binary64_26450 cos-+PI/2_binary64_26449 cos-+PI_binary64_26448 cos-PI_binary64_26447 cos-PI/2_binary64_26446 cos-PI/3_binary64_26445 cos-PI/4_binary64_26444 cos-PI/6_binary64_26443 sin-+PI/2_binary64_26442 sin-+PI_binary64_26441 sin-PI_binary64_26440 sin-PI/2_binary64_26439 sin-PI/3_binary64_26438 sin-PI/4_binary64_26437 sin-PI/6_binary64_26436 sub-1-sin_binary64_26435 sub-1-cos_binary64_26434 -1-add-sin_binary64_26433 -1-add-cos_binary64_26432 1-sub-sin_binary64_26431 1-sub-cos_binary64_26430 cos-sin-sum_binary64_26429 log-E_binary64_26425 pow-base-0_binary64_26419 unpow1/2_binary64_26399 unpow0_binary64_26394 unpow-1_binary64_26392 exp-lft-cube_binary64_26391 exp-cbrt_binary64_26389 div-exp_binary64_26386 rec-exp_binary64_26385 e-exp-1_binary64_26380 exp-0_binary64_26377 cube-neg_binary64_26362 rem-cube-cbrt_binary64_26358 sqr-abs_binary64_26350 mul-1-neg_binary64_26327 +-lft-identity_binary64_26319 div0_binary64_26316 +-inverses_binary64_26314 lft-mult-inverse_binary64_26313 rgt-mult-inverse_binary64_26312 remove-double-div_binary64_26311 difference-of-sqr--1_binary64_26306 difference-of-sqr-1_binary64_26305 cancel-sign-sub_binary64_26300 distribute-frac-neg_binary64_26298 distribute-neg-out_binary64_26297 distribute-rgt1-in_binary64_26291 distribute-lft-out--_binary64_26287
Counts
137 → 231
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01743617
13963445
210473229
332933000

prune689.0ms (7.3%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New2292231
Fresh044
Picked011
Done022
Total2299238
Error
0.0b
Counts
238 → 9
Compiler

Compiled 11214 to 6465 computations (42.3% saved)

regimes313.0ms (3.3%)

Accuracy

Total 0.1b remaining (76.1%)

Threshold costs 0.1b (76.1%)

Compiler

Compiled 3600 to 2396 computations (33.4% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_26265
sub-neg_binary64_26328
neg-mul-1_binary64_26331 neg-sub0_binary64_26330 *-commutative_binary64_26266
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_26595 if-if-and_binary64_26594 if-if-or-not_binary64_26593 if-if-or_binary64_26592 if-not_binary64_26591 if-same_binary64_26590 if-false_binary64_26589 if-true_binary64_26588 tan-0_binary64_26464 cos-0_binary64_26463 sin-0_binary64_26462 unpow1_binary64_26393 e-exp-1_binary64_26380 1-exp_binary64_26379 exp-1-e_binary64_26378 exp-0_binary64_26377 sqr-abs_binary64_26350 sqr-neg_binary64_26349 unsub-neg_binary64_26329 mul-1-neg_binary64_26327 /-rgt-identity_binary64_26326 *-rgt-identity_binary64_26325 *-lft-identity_binary64_26324 remove-double-neg_binary64_26323 sub0-neg_binary64_26322 --rgt-identity_binary64_26321 +-rgt-identity_binary64_26320 +-lft-identity_binary64_26319 cancel-sign-sub-inv_binary64_26301 cancel-sign-sub_binary64_26300 distribute-neg-frac_binary64_26299 distribute-frac-neg_binary64_26298 distribute-neg-out_binary64_26297 distribute-neg-in_binary64_26296 distribute-rgt-neg-out_binary64_26295 distribute-lft-neg-out_binary64_26294 distribute-rgt-neg-in_binary64_26293 distribute-lft-neg-in_binary64_26292
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11010
21510
31710
41810
Proof
(+ f64 h0 (/ f64 (- f64 h0 h1) 2))

end0.0ms (0%)

sample1.3s (13.8%)

Algorithm
intervals
Results
167.0ms7420×body128valid
21.0ms166×body2048valid
15.0ms200×body1024valid
13.0ms139×body512valid
3.0ms75×body256valid
0.0msbody128invalid
Compiler

Compiled 1216 to 814 computations (33.1% saved)

Profiling

Loading profile data...