Details

Time bar (total: 8.7s)

analyze193.0ms (2.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%74.9%25.1%3
0%74.9%25.1%4
0%62.4%37.6%5
0%56.2%43.8%6
7.8%48.4%43.8%7
12.5%40.6%47%8
18.3%33.2%48.5%9
25.2%26.3%48.5%10
29.7%21%49.3%11
32.6%17.7%49.7%12
36.7%13.6%49.7%13
39.4%10.7%49.9%14
Compiler

Compiled 9 to 8 computations (11.1% saved)

sample20.0ms (0.2%)

Algorithm
intervals
Results
9.0ms256×body128valid
0.0msbody128invalid
0.0msbody128nan
Compiler

Compiled 17 to 18 computations (-5.9% saved)

simplify664.0ms (7.7%)

Algorithm
egg-herbie
Rules
596×exp-prod_binary64_471
565×unsub-neg_binary64_413
337×div-sub_binary64_424
325×swap-sqr_binary64_386
282×exp-sum_binary64_465
257×sub-neg_binary64_412
228×exp-diff_binary64_467
223×log-pow_binary64_508
221×cube-prod_binary64_447
200×log-prod_binary64_505
199×distribute-rgt-neg-in_binary64_377
167×associate--r-_binary64_358
158×difference-of-squares_binary64_388
155×cancel-sign-sub-inv_binary64_385
152×associate--l-_binary64_357
149×associate-+l-_binary64_354
145×pow-plus_binary64_482
139×unswap-sqr_binary64_387
138×distribute-neg-in_binary64_380
134×distribute-rgt-in_binary64_369
117×exp-to-pow_binary64_481
115×distribute-rgt-neg-out_binary64_379
114×distribute-rgt1-in_binary64_375
113×associate-+r+_binary64_351
110×+-commutative_binary64_349
106×distribute-lft-neg-in_binary64_376
104×neg-mul-1_binary64_415
102×associate--r+_binary64_355
99×neg-sub0_binary64_414
96×associate-+l+_binary64_352
93×distribute-lft-in_binary64_368
91×*-commutative_binary64_350
84×unpow3_binary64_485 associate-*l*_binary64_360
82×associate--l+_binary64_356
77×distribute-lft-neg-out_binary64_378
76×associate-*r*_binary64_359
75×sqr-pow_binary64_391
74×cube-mult_binary64_449
69×distribute-neg-out_binary64_381
67×distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370
63×cube-neg_binary64_446
54×distribute-rgt-out--_binary64_373
53×distribute-rgt-out_binary64_372
43×sqr-neg_binary64_433
41×pow-sqr_binary64_392
37×cube-div_binary64_448
33×pow-base-1_binary64_479 remove-double-neg_binary64_407
31×exp-neg_binary64_466
23×associate-/r*_binary64_363 associate-+r-_binary64_353
21×--rgt-identity_binary64_405 mul0-lft_binary64_401
20×times-frac_binary64_425 mul0-rgt_binary64_402
19×associate-*l/_binary64_362
17×exp-lft-sqr_binary64_474
16×count-2_binary64_367
14×sub0-neg_binary64_406 difference-of-sqr--1_binary64_390
13×log-div_binary64_506
12×cube-unmult_binary64_456 distribute-lft1-in_binary64_374
11×+-inverses_binary64_398
+-lft-identity_binary64_403
+-rgt-identity_binary64_404
associate-*r/_binary64_361
distribute-neg-frac_binary64_383 associate-/l*_binary64_364
log-E_binary64_509 log-rec_binary64_507 pow-base-0_binary64_503 1-exp_binary64_463 exp-1-e_binary64_462 rem-log-exp_binary64_460 mul-1-neg_binary64_411 difference-of-sqr-1_binary64_389 associate-/l/_binary64_366
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 unpow1/3_binary64_486 unpow2_binary64_484 unpow1/2_binary64_483 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 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-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-sqrt-square_binary64_432 rem-square-sqrt_binary64_431 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 div0_binary64_400 *-inverses_binary64_399 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 cancel-sign-sub_binary64_384 distribute-frac-neg_binary64_382 associate-/r/_binary64_365
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
11512
23212
36612
411212
523412
632312
7154812
8186912
9350212

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 24 to 16 computations (33.3% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(-.f64 (*.f64 x (log.f64 y)) z)
0.3b
(*.f64 x (log.f64 y))

rewrite56.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
12×log-prod_binary64_505
11×add-sqr-sqrt_binary64_441
add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419
distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 associate--l+_binary64_356
pow1_binary64_480
add-exp-log_binary64_457 add-log-exp_binary64_458 add-cbrt-cube_binary64_455 associate-*r*_binary64_359
associate-*l*_binary64_360 cancel-sign-sub-inv_binary64_385
pow-prod-down_binary64_490 prod-exp_binary64_468 cbrt-unprod_binary64_452 unswap-sqr_binary64_387 log-pow_binary64_508 *-commutative_binary64_350 diff-log_binary64_511 flip3--_binary64_423 sub-neg_binary64_412 flip--_binary64_394
Counts
2 → 45
Calls

2 calls:

5.0ms
(-.f64 (*.f64 x (log.f64 y)) z)
5.0ms
(*.f64 x (log.f64 y))
Compiler

Compiled 651 to 216 computations (66.8% saved)

series561.0ms (6.5%)

Error
0.1b
Counts
2 → 21
Calls

2 calls:

364.0ms
(-.f64 (*.f64 x (log.f64 y)) z)
185.0ms
(*.f64 x (log.f64 y))
Compiler

Compiled 486 to 340 computations (30% saved)

simplify196.0ms (2.3%)

Algorithm
egg-herbie
Rules
680×times-frac_binary64_425
630×unsub-neg_binary64_413
336×unswap-sqr_binary64_387
243×associate-*l*_binary64_360
231×neg-sub0_binary64_414
219×neg-mul-1_binary64_415
205×associate-*r*_binary64_359
173×exp-sum_binary64_465
157×exp-prod_binary64_471
155×sub-neg_binary64_412
137×*-commutative_binary64_350
134×sqr-pow_binary64_391
124×distribute-rgt-neg-out_binary64_379
121×cancel-sign-sub-inv_binary64_385 distribute-lft-neg-out_binary64_378
107×exp-diff_binary64_467
99×div-sub_binary64_424
74×associate-+r+_binary64_351
64×remove-double-neg_binary64_407
60×cube-prod_binary64_447 pow-sqr_binary64_392
58×log-prod_binary64_505
56×associate-+l+_binary64_352
51×difference-of-squares_binary64_388
47×distribute-rgt-in_binary64_369 associate-+l-_binary64_354
46×distribute-rgt-out_binary64_372
43×+-commutative_binary64_349
42×distribute-lft-in_binary64_368
40×associate-+r-_binary64_353
39×*-rgt-identity_binary64_409
34×exp-to-pow_binary64_481 associate--r+_binary64_355
33×*-lft-identity_binary64_408
30×associate--l+_binary64_356
27×distribute-frac-neg_binary64_382
25×associate--l-_binary64_357
23×distribute-rgt-neg-in_binary64_377
21×swap-sqr_binary64_386
20×associate-/l*_binary64_364
19×distribute-neg-in_binary64_380
17×+-rgt-identity_binary64_404
16×sqr-neg_binary64_433 distribute-lft-neg-in_binary64_376
15×distribute-rgt-out--_binary64_373 associate--r-_binary64_358
14×sub0-neg_binary64_406 mul0-rgt_binary64_402
13×pow-plus_binary64_482 mul0-lft_binary64_401 distribute-lft-out_binary64_370
12×unpow3_binary64_485 cube-unmult_binary64_456
11×exp-neg_binary64_466
log-pow_binary64_508 cube-neg_binary64_446
log-div_binary64_506
mul-1-neg_binary64_411 distribute-rgt1-in_binary64_375
count-2_binary64_367 associate-/l/_binary64_366
div-exp_binary64_470 cube-mult_binary64_449 --rgt-identity_binary64_405 associate-*r/_binary64_361
pow-base-1_binary64_479 rem-exp-log_binary64_459 +-lft-identity_binary64_403 +-inverses_binary64_398 associate-/r/_binary64_365
log-rec_binary64_507 rem-sqrt-square_binary64_432 /-rgt-identity_binary64_410 div0_binary64_400 distribute-neg-frac_binary64_383 associate-/r*_binary64_363
prod-exp_binary64_468 1-exp_binary64_463 exp-1-e_binary64_462 rem-log-exp_binary64_460 rem-3cbrt-lft_binary64_444 rem-square-sqrt_binary64_431 *-inverses_binary64_399 difference-of-sqr-1_binary64_389 distribute-neg-out_binary64_381 distribute-lft-out--_binary64_371 associate-*l/_binary64_362
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 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow2_binary64_484 unpow1/2_binary64_483 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 rec-exp_binary64_469 e-exp-1_binary64_464 exp-0_binary64_461 cube-div_binary64_448 rem-3cbrt-rft_binary64_445 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 difference-of-sqr--1_binary64_390 cancel-sign-sub_binary64_384 distribute-lft1-in_binary64_374
Counts
66 → 84
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0101666
1201631
2479620
31186620
42423620

prune78.0ms (0.9%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New78684
Fresh000
Picked101
Done000
Total79685
Error
0.0b
Counts
85 → 6
Compiler

Compiled 1367 to 386 computations (71.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(log.f64 (sqrt.f64 y))
0.0b
(+.f64 (*.f64 (log.f64 (sqrt.f64 y)) x) (-.f64 (*.f64 x (log.f64 (sqrt.f64 y))) z))
0.3b
(*.f64 x (log.f64 (sqrt.f64 y)))
0.3b
(*.f64 (log.f64 (sqrt.f64 y)) x)

rewrite136.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
30×log-prod_binary64_505
23×add-sqr-sqrt_binary64_441
19×add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419
16×associate-+r+_binary64_351
15×sqrt-prod_binary64_435
14×pow1_binary64_480
12×distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 associate--l+_binary64_356
add-exp-log_binary64_457 add-log-exp_binary64_458 log-pow_binary64_508 associate-*l*_binary64_360 associate-*r*_binary64_359
add-cbrt-cube_binary64_455
pow1/2_binary64_499 sqrt-pow1_binary64_437 cancel-sign-sub-inv_binary64_385
pow-prod-down_binary64_490 prod-exp_binary64_468 cbrt-unprod_binary64_452 unswap-sqr_binary64_387 *-commutative_binary64_350 sum-log_binary64_510
diff-log_binary64_511 flip3-+_binary64_422 flip-+_binary64_393 associate-+r-_binary64_353 sub-neg_binary64_412 +-commutative_binary64_349 rem-log-exp_binary64_460
Counts
4 → 100
Calls

4 calls:

11.0ms
(+.f64 (*.f64 (log.f64 (sqrt.f64 y)) x) (-.f64 (*.f64 x (log.f64 (sqrt.f64 y))) z))
6.0ms
(*.f64 x (log.f64 (sqrt.f64 y)))
5.0ms
(*.f64 (log.f64 (sqrt.f64 y)) x)
2.0ms
(log.f64 (sqrt.f64 y))
Compiler

Compiled 2180 to 507 computations (76.7% saved)

series718.0ms (8.3%)

Error
0.0b
Counts
4 → 30
Calls

4 calls:

382.0ms
(+.f64 (*.f64 (log.f64 (sqrt.f64 y)) x) (-.f64 (*.f64 x (log.f64 (sqrt.f64 y))) z))
149.0ms
(*.f64 (log.f64 (sqrt.f64 y)) x)
146.0ms
(*.f64 x (log.f64 (sqrt.f64 y)))
19.0ms
(log.f64 (sqrt.f64 y))
Compiler

Compiled 1168 to 732 computations (37.3% saved)

simplify365.0ms (4.2%)

Algorithm
egg-herbie
Rules
234×div-sub_binary64_424
221×associate--l+_binary64_356
212×exp-sum_binary64_465
204×cancel-sign-sub-inv_binary64_385
183×exp-diff_binary64_467
164×exp-prod_binary64_471
158×associate--r+_binary64_355
153×*-commutative_binary64_350
149×distribute-rgt-out_binary64_372 associate-+l-_binary64_354
147×associate-+r-_binary64_353
140×distribute-rgt-in_binary64_369
126×distribute-lft-in_binary64_368
122×associate-*l*_binary64_360
117×+-commutative_binary64_349
95×associate-*r*_binary64_359
94×associate--l-_binary64_357
93×unsub-neg_binary64_413 associate-*l/_binary64_362
81×exp-to-pow_binary64_481
80×associate-*r/_binary64_361
77×sub-neg_binary64_412
75×distribute-neg-in_binary64_380
71×times-frac_binary64_425
67×distribute-rgt-neg-in_binary64_377
60×distribute-rgt-out--_binary64_373
58×distribute-lft-neg-in_binary64_376
55×associate--r-_binary64_358
53×associate-+l+_binary64_352
51×sqr-pow_binary64_391
49×distribute-lft-neg-out_binary64_378
47×log-prod_binary64_505
46×distribute-rgt-neg-out_binary64_379
43×cube-prod_binary64_447
40×associate-/l*_binary64_364 associate-+r+_binary64_351
38×neg-sub0_binary64_414
37×neg-mul-1_binary64_415
36×associate-/r*_binary64_363
30×unswap-sqr_binary64_387
29×pow-sqr_binary64_392
28×*-rgt-identity_binary64_409
27×log-pow_binary64_508 *-lft-identity_binary64_408
21×distribute-rgt1-in_binary64_375
20×distribute-lft-out_binary64_370
19×associate-/r/_binary64_365
18×cube-div_binary64_448 associate-/l/_binary64_366
16×distribute-neg-out_binary64_381
15×log-div_binary64_506 pow-plus_binary64_482
13×swap-sqr_binary64_386
10×rem-sqrt-square_binary64_432 +-rgt-identity_binary64_404
distribute-lft-out--_binary64_371 count-2_binary64_367
div-exp_binary64_470
unpow3_binary64_485 prod-exp_binary64_468
sqr-neg_binary64_433 remove-double-neg_binary64_407 sub0-neg_binary64_406 mul0-rgt_binary64_402
cube-unmult_binary64_456 cube-mult_binary64_449 mul0-lft_binary64_401
exp-lft-sqr_binary64_474 exp-neg_binary64_466 +-inverses_binary64_398
pow-base-1_binary64_479 distribute-lft1-in_binary64_374
cube-neg_binary64_446 difference-of-squares_binary64_388
log-E_binary64_509 rec-exp_binary64_469 1-exp_binary64_463 exp-1-e_binary64_462 rem-log-exp_binary64_460 rem-exp-log_binary64_459 rem-square-sqrt_binary64_431 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 --rgt-identity_binary64_405 +-lft-identity_binary64_403 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383
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-rec_binary64_507 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow2_binary64_484 unpow1/2_binary64_483 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-cbrt_binary64_473 exp-sqrt_binary64_472 e-exp-1_binary64_464 exp-0_binary64_461 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 div0_binary64_400 *-inverses_binary64_399 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 distribute-frac-neg_binary64_382
Counts
130 → 215
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01381755
12571567
26831534
313531525
438171510

prune216.0ms (2.5%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2132215
Fresh055
Picked011
Done000
Total2138221
Error
0b
Counts
221 → 8
Compiler

Compiled 4708 to 1280 computations (72.8% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(*.f64 x (*.f64 2 (log.f64 (cbrt.f64 y))))
0.3b
(+.f64 (*.f64 x (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (log.f64 (cbrt.f64 y)) x))
0.6b
(cbrt.f64 y)
0.6b
(cbrt.f64 y)

rewrite153.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
48×log-prod_binary64_505 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368
30×cbrt-prod_binary64_450
24×associate-+l+_binary64_352
23×add-cube-cbrt_binary64_454 add-sqr-sqrt_binary64_441 *-un-lft-identity_binary64_419
pow1_binary64_480 add-exp-log_binary64_457 add-cbrt-cube_binary64_455
add-log-exp_binary64_458
pow-prod-down_binary64_490 prod-exp_binary64_468 cbrt-unprod_binary64_452 associate-*l*_binary64_360
pow1/3_binary64_501
sum-log_binary64_510 flip3-+_binary64_422 flip-+_binary64_393 +-commutative_binary64_349 associate-*r*_binary64_359 *-commutative_binary64_350
Counts
4 → 99
Calls

4 calls:

10.0ms
(+.f64 (*.f64 x (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (log.f64 (cbrt.f64 y)) x))
7.0ms
(*.f64 x (*.f64 2 (log.f64 (cbrt.f64 y))))
1.0ms
(cbrt.f64 y)
1.0ms
(cbrt.f64 y)
Compiler

Compiled 2544 to 1034 computations (59.4% saved)

series1.2s (13.7%)

Error
0b
Counts
4 → 18
Calls

4 calls:

504.0ms
(+.f64 (*.f64 x (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (log.f64 (cbrt.f64 y)) x))
433.0ms
(*.f64 x (*.f64 2 (log.f64 (cbrt.f64 y))))
119.0ms
(cbrt.f64 y)
108.0ms
(cbrt.f64 y)
Compiler

Compiled 936 to 729 computations (22.1% saved)

simplify498.0ms (5.8%)

Algorithm
egg-herbie
Rules
465×distribute-rgt-out_binary64_372
314×*-commutative_binary64_350
313×cancel-sign-sub-inv_binary64_385
253×distribute-rgt-neg-in_binary64_377
227×distribute-lft-neg-in_binary64_376
185×distribute-rgt-in_binary64_369
172×distribute-lft-out_binary64_370
166×distribute-lft-in_binary64_368
165×associate-*l*_binary64_360
164×associate-*r*_binary64_359
129×log-prod_binary64_505
125×count-2_binary64_367
118×unswap-sqr_binary64_387
111×sqr-pow_binary64_391 distribute-neg-in_binary64_380
109×distribute-rgt-out--_binary64_373
64×cube-prod_binary64_447
63×swap-sqr_binary64_386
60×sub-neg_binary64_412
57×exp-prod_binary64_471 pow-sqr_binary64_392 distribute-lft-neg-out_binary64_378
53×neg-mul-1_binary64_415 neg-sub0_binary64_414
51×associate-/r*_binary64_363
47×exp-sum_binary64_465
41×distribute-lft-out--_binary64_371 associate-/l*_binary64_364
32×distribute-rgt1-in_binary64_375
29×distribute-rgt-neg-out_binary64_379
26×associate-/l/_binary64_366 associate-+l+_binary64_352
24×log-pow_binary64_508
23×associate-+r+_binary64_351
22×exp-to-pow_binary64_481 +-commutative_binary64_349
19×unsub-neg_binary64_413
16×distribute-lft1-in_binary64_374
15×unpow3_binary64_485
13×log-div_binary64_506
12×cube-mult_binary64_449
cube-unmult_binary64_456 associate-+r-_binary64_353
rem-sqrt-square_binary64_432 +-rgt-identity_binary64_404
exp-lft-sqr_binary64_474 prod-exp_binary64_468 associate-+l-_binary64_354
difference-of-squares_binary64_388 distribute-neg-out_binary64_381 associate-/r/_binary64_365 associate--r+_binary64_355
log-rec_binary64_507 unpow1/3_binary64_486 pow-plus_binary64_482 div-exp_binary64_470 sub0-neg_binary64_406 associate-*r/_binary64_361
rem-log-exp_binary64_460 rem-exp-log_binary64_459 mul0-rgt_binary64_402 associate--l+_binary64_356
exp-diff_binary64_467 1-exp_binary64_463 rem-3cbrt-lft_binary64_444 mul-1-neg_binary64_411 *-inverses_binary64_399 difference-of-sqr--1_binary64_390
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 pow-base-0_binary64_503 unpow2_binary64_484 unpow1/2_binary64_483 pow-base-1_binary64_479 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-cbrt_binary64_473 exp-sqrt_binary64_472 rec-exp_binary64_469 exp-neg_binary64_466 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 cube-div_binary64_448 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-square-sqrt_binary64_431 times-frac_binary64_425 div-sub_binary64_424 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 --rgt-identity_binary64_405 +-lft-identity_binary64_403 mul0-lft_binary64_401 div0_binary64_400 +-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-neg-frac_binary64_383 distribute-frac-neg_binary64_382 associate-*l/_binary64_362 associate--r-_binary64_358 associate--l-_binary64_357
Counts
117 → 324
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01601954
13461820
29741633
325791615

prune450.0ms (5.2%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New3240324
Fresh066
Picked011
Done011
Total3248332
Error
0b
Counts
332 → 8
Compiler

Compiled 8526 to 3739 computations (56.1% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.5b
(cbrt.f64 (log.f64 (sqrt.f64 y)))
0.5b
(cbrt.f64 (log.f64 (sqrt.f64 y)))
0.5b
(cbrt.f64 (log.f64 (sqrt.f64 y)))
0.5b
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) (cbrt.f64 (log.f64 (sqrt.f64 y))))

rewrite141.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
50×cbrt-prod_binary64_450
27×pow1_binary64_480
23×add-sqr-sqrt_binary64_441 log-pow_binary64_508
17×*-un-lft-identity_binary64_419
15×add-cube-cbrt_binary64_454
11×swap-sqr_binary64_386
pow1/3_binary64_501 associate-*l*_binary64_360 associate-*r*_binary64_359
pow1/2_binary64_499 sqrt-pow1_binary64_437
add-exp-log_binary64_457
add-log-exp_binary64_458 add-cbrt-cube_binary64_455 unswap-sqr_binary64_387
pow-prod-down_binary64_490 pow-prod-up_binary64_489 pow-sqr_binary64_392
pow2_binary64_500 pow-plus_binary64_482 prod-exp_binary64_468 cbrt-unprod_binary64_452 *-commutative_binary64_350
Counts
4 → 93
Calls

4 calls:

10.0ms
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) (cbrt.f64 (log.f64 (sqrt.f64 y))))
2.0ms
(cbrt.f64 (log.f64 (sqrt.f64 y)))
1.0ms
(cbrt.f64 (log.f64 (sqrt.f64 y)))
1.0ms
(cbrt.f64 (log.f64 (sqrt.f64 y)))
Compiler

Compiled 2969 to 555 computations (81.3% saved)

series276.0ms (3.2%)

Error
0b
Counts
4 → 12
Calls

4 calls:

87.0ms
(*.f64 (cbrt.f64 (log.f64 (sqrt.f64 y))) (cbrt.f64 (log.f64 (sqrt.f64 y))))
63.0ms
(cbrt.f64 (log.f64 (sqrt.f64 y)))
58.0ms
(cbrt.f64 (log.f64 (sqrt.f64 y)))
56.0ms
(cbrt.f64 (log.f64 (sqrt.f64 y)))
Compiler

Compiled 1183 to 686 computations (42% saved)

simplify814.0ms (9.4%)

Algorithm
egg-herbie
Rules
346×associate-/l*_binary64_364
343×associate-/r*_binary64_363
291×swap-sqr_binary64_386
286×log-div_binary64_506
282×exp-prod_binary64_471
277×log-prod_binary64_505
275×cube-div_binary64_448
234×cube-prod_binary64_447
222×associate-/r/_binary64_365
192×sqr-pow_binary64_391
184×associate-*l*_binary64_360
149×*-commutative_binary64_350
143×cancel-sign-sub-inv_binary64_385
138×associate-*r*_binary64_359
96×distribute-rgt-in_binary64_369
85×pow-sqr_binary64_392
80×unswap-sqr_binary64_387
73×associate-/l/_binary64_366
66×distribute-lft-in_binary64_368
56×div-sub_binary64_424
53×*-lft-identity_binary64_408
48×associate-*l/_binary64_362
46×*-rgt-identity_binary64_409
44×times-frac_binary64_425
41×exp-sqrt_binary64_472
39×pow-plus_binary64_482
37×exp-sum_binary64_465
33×distribute-rgt-out_binary64_372
32×exp-lft-sqr_binary64_474
26×unpow3_binary64_485 associate-*r/_binary64_361
25×/-rgt-identity_binary64_410
23×log-pow_binary64_508
21×cube-unmult_binary64_456 cube-mult_binary64_449 associate-+l+_binary64_352 associate-+r+_binary64_351
20×log-rec_binary64_507 rem-sqrt-square_binary64_432
16×sub-neg_binary64_412
11×distribute-lft-out_binary64_370
10×exp-to-pow_binary64_481 exp-diff_binary64_467
prod-exp_binary64_468 unsub-neg_binary64_413 sub0-neg_binary64_406 associate-+l-_binary64_354
neg-mul-1_binary64_415 count-2_binary64_367
unpow1/3_binary64_486 pow-base-1_binary64_479 div-exp_binary64_470 remove-double-div_binary64_395 distribute-rgt1-in_binary64_375 distribute-rgt-out--_binary64_373
unpow2_binary64_484 associate-+r-_binary64_353
unpow1_binary64_477 rec-exp_binary64_469 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 neg-sub0_binary64_414 mul0-lft_binary64_401 +-inverses_binary64_398 distribute-lft-neg-in_binary64_376 +-commutative_binary64_349
1-exp_binary64_463 exp-1-e_binary64_462 rem-log-exp_binary64_460 rem-exp-log_binary64_459 rem-3cbrt-rft_binary64_445 rem-square-sqrt_binary64_431 +-rgt-identity_binary64_404 +-lft-identity_binary64_403 mul0-rgt_binary64_402 *-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 pow-base-0_binary64_503 unpow1/2_binary64_483 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-cbrt_binary64_473 exp-neg_binary64_466 e-exp-1_binary64_464 exp-0_binary64_461 cube-neg_binary64_446 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 mul-1-neg_binary64_411 remove-double-neg_binary64_407 --rgt-identity_binary64_405 div0_binary64_400 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 difference-of-squares_binary64_388 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-lft1-in_binary64_374 distribute-lft-out--_binary64_371 associate--r-_binary64_358 associate--l-_binary64_357 associate--l+_binary64_356 associate--r+_binary64_355
Counts
105 → 169
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0681562
11151550
23051438
38871422
429921317

prune249.0ms (2.9%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1690169
Fresh055
Picked011
Done022
Total1698177
Error
0b
Counts
177 → 8
Compiler

Compiled 6002 to 1514 computations (74.8% saved)

regimes336.0ms (3.9%)

Accuracy

Total 0.1b remaining (96.5%)

Threshold costs 0.1b (96.5%)

Compiler

Compiled 3306 to 2212 computations (33.1% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
sub-neg_binary64_412 *-commutative_binary64_350 +-commutative_binary64_349
neg-mul-1_binary64_415 neg-sub0_binary64_414
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 1-exp_binary64_463 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
01117
11717
22517
32917
43117
Proof
(- f64 (- f64 (* f64 2 (* f64 h0 (log f64 (sqrt f64 h1)))) h2) h1)

end0.0ms (0%)

sample1.3s (15.1%)

Algorithm
intervals
Results
314.0ms7999×body128valid
1.0ms31×body128invalid
1.0ms27×body128nan
1.0msbody2048valid
Compiler

Compiled 841 to 566 computations (32.7% saved)

Profiling

Loading profile data...