Details

Time bar (total: 3.2s)

analyze169.0ms (5.2%)

Algorithm
search
egg-herbie
Rules
242×div-sub_binary64_424
160×times-frac_binary64_425
138×associate-/l/_binary64_366
114×distribute-rgt-in_binary64_369
112×associate-/r/_binary64_365
94×distribute-lft-in_binary64_368
93×associate-/l*_binary64_364
91×sub-neg_binary64_412 associate-/r*_binary64_363
44×cancel-sign-sub-inv_binary64_385 distribute-neg-frac_binary64_383
41×unsub-neg_binary64_413
26×associate-*r*_binary64_359
24×distribute-rgt-neg-in_binary64_377
22×associate-*l/_binary64_362
20×associate--l-_binary64_357
19×neg-sub0_binary64_414 distribute-neg-in_binary64_380
18×distribute-lft-neg-in_binary64_376
17×associate-+l-_binary64_354 +-commutative_binary64_349
16×neg-mul-1_binary64_415 distribute-rgt-neg-out_binary64_379 associate-*r/_binary64_361 associate--l+_binary64_356
12×mul0-rgt_binary64_402
11×distribute-frac-neg_binary64_382 associate-*l*_binary64_360
10×mul0-lft_binary64_401 div0_binary64_400 associate--r-_binary64_358
associate--r+_binary64_355 *-commutative_binary64_350
mul-1-neg_binary64_411 distribute-lft-neg-out_binary64_378
sub0-neg_binary64_406 associate-+r+_binary64_351
*-rgt-identity_binary64_409 distribute-rgt-out--_binary64_373 associate-+r-_binary64_353 associate-+l+_binary64_352
*-lft-identity_binary64_408
--rgt-identity_binary64_405 +-rgt-identity_binary64_404
/-rgt-identity_binary64_410
remove-double-neg_binary64_407 remove-double-div_binary64_395 distribute-rgt1-in_binary64_375 distribute-rgt-out_binary64_372
1-exp_binary64_463 *-inverses_binary64_399
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 log-rec_binary64_507 log-div_binary64_506 log-prod_binary64_505 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow3_binary64_485 unpow2_binary64_484 unpow1/2_binary64_483 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 exp-prod_binary64_471 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-unmult_binary64_456 cube-mult_binary64_449 cube-div_binary64_448 cube-prod_binary64_447 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-sqrt-square_binary64_432 rem-square-sqrt_binary64_431 +-lft-identity_binary64_403 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 pow-sqr_binary64_392 sqr-pow_binary64_391 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 difference-of-squares_binary64_388 unswap-sqr_binary64_387 swap-sqr_binary64_386 cancel-sign-sub_binary64_384 distribute-neg-out_binary64_381 distribute-lft1-in_binary64_374 distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370 count-2_binary64_367
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
11110
21510
32010
42610
53410
64310
75610
87510
99410
1011510
1113310
1218210
1324310
1430210
1537610
1649210
1750910
1855610
1954010
2046110
011
111
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%50%0%2
50%50%0%3
87.5%12.5%0%4
93.7%6.2%0%5
96.8%3.1%0%6
98.4%1.6%0%7
99.2%0.8%0%8
99.6%0.4%0%9
99.8%0.2%0%10
99.9%0.1%0%11
99.9%0%0%12
99.9%0%0%13
99.9%0%0%14
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample12.0ms (0.4%)

Algorithm
intervals
Results
5.0ms256×body128valid
Compiler

Compiled 15 to 14 computations (6.7% saved)

simplify37.0ms (1.2%)

Algorithm
egg-herbie
Rules
242×div-sub_binary64_424
160×times-frac_binary64_425
138×associate-/l/_binary64_366
114×distribute-rgt-in_binary64_369
112×associate-/r/_binary64_365
94×distribute-lft-in_binary64_368
93×associate-/l*_binary64_364
91×sub-neg_binary64_412 associate-/r*_binary64_363
44×cancel-sign-sub-inv_binary64_385 distribute-neg-frac_binary64_383
41×unsub-neg_binary64_413
26×associate-*r*_binary64_359
24×distribute-rgt-neg-in_binary64_377
22×associate-*l/_binary64_362
20×associate--l-_binary64_357
19×neg-sub0_binary64_414 distribute-neg-in_binary64_380
18×distribute-lft-neg-in_binary64_376
17×associate-+l-_binary64_354 +-commutative_binary64_349
16×neg-mul-1_binary64_415 distribute-rgt-neg-out_binary64_379 associate-*r/_binary64_361 associate--l+_binary64_356
12×mul0-rgt_binary64_402
11×distribute-frac-neg_binary64_382 associate-*l*_binary64_360
10×mul0-lft_binary64_401 div0_binary64_400 associate--r-_binary64_358
associate--r+_binary64_355 *-commutative_binary64_350
mul-1-neg_binary64_411 distribute-lft-neg-out_binary64_378
sub0-neg_binary64_406 associate-+r+_binary64_351
*-rgt-identity_binary64_409 distribute-rgt-out--_binary64_373 associate-+r-_binary64_353 associate-+l+_binary64_352
*-lft-identity_binary64_408
--rgt-identity_binary64_405 +-rgt-identity_binary64_404
/-rgt-identity_binary64_410
remove-double-neg_binary64_407 remove-double-div_binary64_395 distribute-rgt1-in_binary64_375 distribute-rgt-out_binary64_372
1-exp_binary64_463 *-inverses_binary64_399
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 log-rec_binary64_507 log-div_binary64_506 log-prod_binary64_505 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow3_binary64_485 unpow2_binary64_484 unpow1/2_binary64_483 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 exp-prod_binary64_471 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-unmult_binary64_456 cube-mult_binary64_449 cube-div_binary64_448 cube-prod_binary64_447 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-sqrt-square_binary64_432 rem-square-sqrt_binary64_431 +-lft-identity_binary64_403 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 pow-sqr_binary64_392 sqr-pow_binary64_391 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 difference-of-squares_binary64_388 unswap-sqr_binary64_387 swap-sqr_binary64_386 cancel-sign-sub_binary64_384 distribute-neg-out_binary64_381 distribute-lft1-in_binary64_374 distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370 count-2_binary64_367
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
11110
21510
32010
42610
53410
64310
75610
87510
99410
1011510
1113310
1218210
1324310
1430210
1537610
1649210
1750910
1855610
1954010
2046110

prune5.0ms (0.2%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.0b
Counts
1 → 1
Compiler

Compiled 7 to 6 computations (14.3% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

0.0b
(/.f64 (+.f64 x 1) (-.f64 1 x))

rewrite72.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
42×*-un-lft-identity_binary64_419
28×add-sqr-sqrt_binary64_441
24×times-frac_binary64_425
13×add-cube-cbrt_binary64_454
10×difference-of-squares_binary64_388
distribute-lft-out_binary64_370
associate-/r*_binary64_363
distribute-lft-out--_binary64_371
associate-/l*_binary64_364
add-exp-log_binary64_457 add-cbrt-cube_binary64_455
associate-/l/_binary64_366 associate-/r/_binary64_365
pow1_binary64_480 div-exp_binary64_470 add-log-exp_binary64_458 cbrt-undiv_binary64_453 frac-2neg_binary64_430 clear-num_binary64_418 div-inv_binary64_416 flip3-+_binary64_422 flip-+_binary64_393 flip3--_binary64_423 flip--_binary64_394
Counts
1 → 50
Calls

1 calls:

9.0ms
(/.f64 (+.f64 x 1) (-.f64 1 x))
Compiler

Compiled 800 to 609 computations (23.9% saved)

series51.0ms (1.6%)

Error
0.0b
Counts
1 → 10
Calls

1 calls:

43.0ms
(/.f64 (+.f64 x 1) (-.f64 1 x))
Compiler

Compiled 216 to 199 computations (7.9% saved)

simplify103.0ms (3.2%)

Algorithm
egg-herbie
Rules
686×div-sub_binary64_424
565×times-frac_binary64_425
349×associate-/l*_binary64_364
301×distribute-rgt-in_binary64_369
229×distribute-lft-in_binary64_368
180×associate-/r*_binary64_363
156×associate-+l+_binary64_352
151×associate-/l/_binary64_366
128×associate-+r+_binary64_351
116×distribute-rgt-out_binary64_372
108×cancel-sign-sub-inv_binary64_385
106×*-commutative_binary64_350
95×associate-/r/_binary64_365 associate-*l/_binary64_362
78×associate-*r/_binary64_361
76×sub-neg_binary64_412
69×associate-+l-_binary64_354
67×associate-*l*_binary64_360
62×associate-*r*_binary64_359
56×+-commutative_binary64_349
52×associate-+r-_binary64_353
44×distribute-rgt-neg-out_binary64_379
43×unsub-neg_binary64_413 distribute-rgt-neg-in_binary64_377
40×distribute-lft-neg-out_binary64_378
36×distribute-lft-out_binary64_370
35×distribute-lft-neg-in_binary64_376
33×associate--r+_binary64_355
30×cube-prod_binary64_447
29×neg-sub0_binary64_414
27×distribute-neg-frac_binary64_383
25×neg-mul-1_binary64_415
23×cube-div_binary64_448
21×log-prod_binary64_505 distribute-rgt-out--_binary64_373
20×distribute-neg-in_binary64_380 distribute-rgt1-in_binary64_375
19×unpow3_binary64_485
18×/-rgt-identity_binary64_410 unswap-sqr_binary64_387
17×*-rgt-identity_binary64_409
16×sqr-pow_binary64_391
15×log-div_binary64_506 associate--r-_binary64_358 associate--l-_binary64_357 associate--l+_binary64_356
12×*-lft-identity_binary64_408
11×distribute-lft1-in_binary64_374
10×exp-prod_binary64_471
sub0-neg_binary64_406
cube-unmult_binary64_456 distribute-frac-neg_binary64_382
distribute-lft-out--_binary64_371
log-rec_binary64_507 exp-diff_binary64_467 swap-sqr_binary64_386 distribute-neg-out_binary64_381
pow-plus_binary64_482 +-rgt-identity_binary64_404 remove-double-div_binary64_395
exp-sum_binary64_465 difference-of-squares_binary64_388
sqr-neg_binary64_433 difference-of-sqr-1_binary64_389
cube-mult_binary64_449 cube-neg_binary64_446 rem-sqrt-square_binary64_432 mul-1-neg_binary64_411 mul0-rgt_binary64_402 mul0-lft_binary64_401
unpow2_binary64_484 unpow1/2_binary64_483 unpow1_binary64_477 1-exp_binary64_463 exp-1-e_binary64_462 remove-double-neg_binary64_407 --rgt-identity_binary64_405 pow-sqr_binary64_392 difference-of-sqr--1_binary64_390 count-2_binary64_367
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 pow-base-0_binary64_503 unpow1/3_binary64_486 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-neg_binary64_466 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 rem-square-sqrt_binary64_431 +-lft-identity_binary64_403 div0_binary64_400 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 cancel-sign-sub_binary64_384
Counts
60 → 54
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0971048
1221988
2541985
31299985
43676985
54958985
64924985

prune55.0ms (1.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New51354
Fresh000
Picked011
Done000
Total51455
Error
0b
Counts
55 → 4
Compiler

Compiled 788 to 589 computations (25.3% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

0.0b
(/.f64 1 (/.f64 (-.f64 1 x) (+.f64 1 x)))
0.0b
(/.f64 (-.f64 1 x) (+.f64 1 x))

rewrite327.0ms (10.1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
214×*-un-lft-identity_binary64_419
210×times-frac_binary64_425
152×add-sqr-sqrt_binary64_441
89×add-cube-cbrt_binary64_454
42×difference-of-squares_binary64_388
34×associate-/r*_binary64_363
31×distribute-lft-out_binary64_370
21×distribute-lft-out--_binary64_371
15×add-exp-log_binary64_457
11×associate-/r/_binary64_365
add-cbrt-cube_binary64_455 associate-/l*_binary64_364
div-exp_binary64_470
div-inv_binary64_416
flip3-+_binary64_422 flip-+_binary64_393
cbrt-undiv_binary64_453
pow1_binary64_480
add-log-exp_binary64_458 frac-2neg_binary64_430 clear-num_binary64_418 associate-/l/_binary64_366 1-exp_binary64_463 rec-exp_binary64_469
div-sub_binary64_424 flip3--_binary64_423 flip--_binary64_394 inv-pow_binary64_504 pow-flip_binary64_493
Counts
2 → 195
Calls

2 calls:

13.0ms
(/.f64 1 (/.f64 (-.f64 1 x) (+.f64 1 x)))
9.0ms
(/.f64 (-.f64 1 x) (+.f64 1 x))
Compiler

Compiled 4032 to 3264 computations (19% saved)

series103.0ms (3.2%)

Error
0b
Counts
2 → 20
Calls

2 calls:

45.0ms
(/.f64 1 (/.f64 (-.f64 1 x) (+.f64 1 x)))
44.0ms
(/.f64 (-.f64 1 x) (+.f64 1 x))
Compiler

Compiled 466 to 431 computations (7.5% saved)

simplify203.0ms (6.3%)

Algorithm
egg-herbie
Rules
706×div-sub_binary64_424
355×cancel-sign-sub-inv_binary64_385
330×associate-/r/_binary64_365
293×associate-/l/_binary64_366
292×times-frac_binary64_425
265×associate-*l/_binary64_362
233×associate-/l*_binary64_364
225×distribute-rgt-in_binary64_369
221×associate-/r*_binary64_363
216×associate-*l*_binary64_360
200×associate-*r*_binary64_359
187×*-commutative_binary64_350
179×distribute-lft-in_binary64_368 associate-*r/_binary64_361
162×sub-neg_binary64_412
101×distribute-rgt-neg-out_binary64_379
93×distribute-neg-frac_binary64_383
77×associate-+r+_binary64_351
76×+-commutative_binary64_349
65×*-rgt-identity_binary64_409
62×exp-prod_binary64_471
59×neg-sub0_binary64_414 associate-+l+_binary64_352
57×neg-mul-1_binary64_415
53×unsub-neg_binary64_413
44×distribute-rgt-neg-in_binary64_377
39×distribute-frac-neg_binary64_382
35×*-lft-identity_binary64_408
33×/-rgt-identity_binary64_410 distribute-neg-in_binary64_380 distribute-lft-neg-in_binary64_376 associate-+l-_binary64_354
32×exp-sum_binary64_465
31×cube-prod_binary64_447 sqr-pow_binary64_391 unswap-sqr_binary64_387
29×distribute-rgt-out_binary64_372
26×associate--r+_binary64_355 associate-+r-_binary64_353
19×cube-div_binary64_448
16×exp-diff_binary64_467 sub0-neg_binary64_406 associate--l+_binary64_356
15×log-div_binary64_506 distribute-rgt-out--_binary64_373
14×swap-sqr_binary64_386
13×log-prod_binary64_505
12×distribute-rgt1-in_binary64_375
11×+-rgt-identity_binary64_404
10×distribute-lft-neg-out_binary64_378
unpow3_binary64_485 remove-double-div_binary64_395
cube-unmult_binary64_456
associate--r-_binary64_358
sqr-neg_binary64_433
log-rec_binary64_507 cube-mult_binary64_449
distribute-lft-out_binary64_370 associate--l-_binary64_357
unpow1/2_binary64_483 pow-plus_binary64_482 --rgt-identity_binary64_405 +-lft-identity_binary64_403 difference-of-squares_binary64_388 distribute-neg-out_binary64_381
exp-neg_binary64_466 cube-neg_binary64_446 mul-1-neg_binary64_411 pow-sqr_binary64_392 difference-of-sqr-1_binary64_389 distribute-lft-out--_binary64_371
unpow2_binary64_484 unpow1_binary64_477 1-exp_binary64_463 exp-1-e_binary64_462 rem-sqrt-square_binary64_432 remove-double-neg_binary64_407 div0_binary64_400 difference-of-sqr--1_binary64_390 count-2_binary64_367
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 pow-base-0_binary64_503 unpow1/3_binary64_486 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 rem-square-sqrt_binary64_431 mul0-rgt_binary64_402 mul0-lft_binary64_401 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 cancel-sign-sub_binary64_384 distribute-lft1-in_binary64_374
Counts
215 → 164
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01924654
14684359
214354296
335444296
446914296
557054296

prune175.0ms (5.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1640164
Fresh022
Picked011
Done011
Total1644168
Error
0b
Counts
168 → 4
Compiler

Compiled 2635 to 2016 computations (23.5% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (+.f64 1 x) (-.f64 1 x))
0.0b
(cbrt.f64 (pow.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)) 3))
0.0b
(pow.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)) 3)

rewrite379.0ms (11.7%)

Algorithm
rewrite-expression-head
Error
0b
Rules
186×*-un-lft-identity_binary64_419
124×add-sqr-sqrt_binary64_441
120×times-frac_binary64_425
66×cbrt-prod_binary64_450
61×add-cube-cbrt_binary64_454
60×unpow-prod-down_binary64_498 cube-prod_binary64_447
42×difference-of-squares_binary64_388
31×distribute-lft-out_binary64_370
21×distribute-lft-out--_binary64_371
10×associate-/r/_binary64_365
add-exp-log_binary64_457 add-cbrt-cube_binary64_455
associate-/r*_binary64_363
div-inv_binary64_416 flip3--_binary64_423 flip--_binary64_394
pow1_binary64_480 associate-/l*_binary64_364
pow-unpow_binary64_496 add-log-exp_binary64_458
div-exp_binary64_470 pow-exp_binary64_487 unpow3_binary64_485 cube-mult_binary64_449 cube-div_binary64_448 rem-cube-cbrt_binary64_442 cbrt-undiv_binary64_453 sqr-pow_binary64_391 associate-/l/_binary64_366
pow-pow_binary64_491 pow-to-exp_binary64_488 pow1/3_binary64_501 cbrt-div_binary64_451 rem-cbrt-cube_binary64_443 frac-2neg_binary64_430 clear-num_binary64_418 flip3-+_binary64_422 flip-+_binary64_393
Counts
3 → 206
Calls

3 calls:

14.0ms
(pow.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)) 3)
13.0ms
(cbrt.f64 (pow.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)) 3))
8.0ms
(/.f64 (+.f64 1 x) (-.f64 1 x))
Compiler

Compiled 4415 to 3590 computations (18.7% saved)

series162.0ms (5%)

Error
0b
Counts
3 → 30
Calls

3 calls:

55.0ms
(pow.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)) 3)
44.0ms
(/.f64 (+.f64 1 x) (-.f64 1 x))
38.0ms
(cbrt.f64 (pow.f64 (/.f64 (+.f64 1 x) (-.f64 1 x)) 3))
Compiler

Compiled 736 to 683 computations (7.2% saved)

simplify139.0ms (4.3%)

Algorithm
egg-herbie
Rules
801×associate-/l*_binary64_364
435×unswap-sqr_binary64_387
265×associate-/l/_binary64_366
253×distribute-rgt-in_binary64_369
224×distribute-lft-in_binary64_368
201×associate-/r/_binary64_365
141×sqr-pow_binary64_391
93×log-prod_binary64_505
82×associate-*l/_binary64_362
80×cube-div_binary64_448
79×associate-*r/_binary64_361
65×log-div_binary64_506
58×exp-prod_binary64_471
53×associate-*l*_binary64_360
51×cube-prod_binary64_447
47×unpow3_binary64_485
46×cube-mult_binary64_449 associate-*r*_binary64_359
45×+-commutative_binary64_349
35×sub-neg_binary64_412
34×swap-sqr_binary64_386
32×distribute-rgt-neg-in_binary64_377
31×rem-cbrt-cube_binary64_443
28×*-rgt-identity_binary64_409 associate-+r+_binary64_351 *-commutative_binary64_350
27×cancel-sign-sub-inv_binary64_385 distribute-lft-neg-in_binary64_376
25×distribute-rgt-out_binary64_372
24×neg-mul-1_binary64_415 neg-sub0_binary64_414 associate-/r*_binary64_363
23×times-frac_binary64_425
22×distribute-neg-in_binary64_380
21×associate-+l+_binary64_352
20×*-lft-identity_binary64_408
19×distribute-neg-frac_binary64_383
14×log-pow_binary64_508 rem-sqrt-square_binary64_432
13×pow-sqr_binary64_392
10×div-sub_binary64_424 associate--r+_binary64_355
pow-plus_binary64_482
distribute-lft-out_binary64_370
unsub-neg_binary64_413 distribute-lft-neg-out_binary64_378 distribute-rgt1-in_binary64_375
cube-unmult_binary64_456 distribute-rgt-neg-out_binary64_379
/-rgt-identity_binary64_410 distribute-rgt-out--_binary64_373
rem-cube-cbrt_binary64_442 rem-square-sqrt_binary64_431 count-2_binary64_367 associate-+r-_binary64_353
unpow1/2_binary64_483 unpow1_binary64_477 +-rgt-identity_binary64_404 distribute-neg-out_binary64_381
unpow2_binary64_484 1-exp_binary64_463 rem-3cbrt-lft_binary64_444 remove-double-neg_binary64_407 difference-of-sqr--1_binary64_390 difference-of-squares_binary64_388 associate--r-_binary64_358 associate-+l-_binary64_354
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-rec_binary64_507 pow-base-0_binary64_503 unpow1/3_binary64_486 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 sqr-abs_binary64_434 sqr-neg_binary64_433 mul-1-neg_binary64_411 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-lft-identity_binary64_403 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-frac-neg_binary64_382 distribute-lft1-in_binary64_374 distribute-lft-out--_binary64_371 associate--l-_binary64_357 associate--l+_binary64_356
Counts
236 → 178
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02064907
15494540
216774478
357484478

prune368.0ms (11.4%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1780178
Fresh011
Picked011
Done022
Total1784182
Error
0b
Counts
182 → 4
Compiler

Compiled 2829 to 2195 computations (22.4% saved)

localize3.0ms (0.1%)

rewrite0.0ms (0%)

Algorithm
rewrite-expression-head
Error
0b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

series0.0ms (0%)

Error
0b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

simplify8.0ms (0.2%)

Algorithm
egg-herbie
Rules
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 log-rec_binary64_507 log-div_binary64_506 log-prod_binary64_505 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow3_binary64_485 unpow2_binary64_484 unpow1/2_binary64_483 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 exp-prod_binary64_471 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 1-exp_binary64_463 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-unmult_binary64_456 cube-mult_binary64_449 cube-div_binary64_448 cube-prod_binary64_447 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-sqrt-square_binary64_432 rem-square-sqrt_binary64_431 times-frac_binary64_425 div-sub_binary64_424 neg-mul-1_binary64_415 neg-sub0_binary64_414 unsub-neg_binary64_413 sub-neg_binary64_412 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-rgt-identity_binary64_404 +-lft-identity_binary64_403 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 pow-sqr_binary64_392 sqr-pow_binary64_391 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 difference-of-squares_binary64_388 unswap-sqr_binary64_387 swap-sqr_binary64_386 cancel-sign-sub-inv_binary64_385 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-neg-in_binary64_380 distribute-rgt-neg-out_binary64_379 distribute-lft-neg-out_binary64_378 distribute-rgt-neg-in_binary64_377 distribute-lft-neg-in_binary64_376 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 distribute-rgt-out--_binary64_373 distribute-rgt-out_binary64_372 distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 count-2_binary64_367 associate-/l/_binary64_366 associate-/r/_binary64_365 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l/_binary64_362 associate-*r/_binary64_361 associate-*l*_binary64_360 associate-*r*_binary64_359 associate--r-_binary64_358 associate--l-_binary64_357 associate--l+_binary64_356 associate--r+_binary64_355 associate-+l-_binary64_354 associate-+r-_binary64_353 associate-+l+_binary64_352 associate-+r+_binary64_351 *-commutative_binary64_350 +-commutative_binary64_349
Counts
0 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
100

prune0.0ms (0%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done033
Total044
Error
0b
Counts
4 → 4
Compiler

Compiled 0 to 0 computations (0% saved)

regimes86.0ms (2.6%)

Accuracy

Total 0.0b remaining (100%)

Threshold costs 0.0b (100%)

Compiler

Compiled 684 to 594 computations (13.2% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_349
sub-neg_binary64_412
1-exp_binary64_463 neg-mul-1_binary64_415 neg-sub0_binary64_414 *-commutative_binary64_350
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_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 unpow1_binary64_477 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 sqr-abs_binary64_434 sqr-neg_binary64_433 unsub-neg_binary64_413 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-rgt-identity_binary64_404 +-lft-identity_binary64_403 cancel-sign-sub-inv_binary64_385 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-neg-in_binary64_380 distribute-rgt-neg-out_binary64_379 distribute-lft-neg-out_binary64_378 distribute-rgt-neg-in_binary64_377 distribute-lft-neg-in_binary64_376
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
11314
21714
31914
42014
51914

end0.0ms (0%)

sample760.0ms (23.5%)

Algorithm
intervals
Results
170.0ms8000×body128valid
Compiler

Compiled 351 to 306 computations (12.8% saved)

Profiling

Loading profile data...