Time bar (total: 3.1s)
| 1× | search |
| 2× | egg-herbie |
| 14× | sub-neg_binary64_4504 cancel-sign-sub-inv_binary64_4477 associate--r+_binary64_4447 |
| 8× | neg-mul-1_binary64_4507 associate--r-_binary64_4450 |
| 6× | distribute-rgt-neg-in_binary64_4469 +-commutative_binary64_4441 |
| 4× | neg-sub0_binary64_4506 *-lft-identity_binary64_4500 sub0-neg_binary64_4498 distribute-rgt-in_binary64_4461 *-commutative_binary64_4442 |
| 2× | unsub-neg_binary64_4505 +-rgt-identity_binary64_4496 +-lft-identity_binary64_4495 distribute-neg-in_binary64_4472 distribute-rgt-neg-out_binary64_4471 distribute-lft-neg-out_binary64_4470 distribute-lft-neg-in_binary64_4468 associate-+l-_binary64_4446 associate-+r-_binary64_4445 associate-+r+_binary64_4443 |
| 1× | 1-exp_binary64_4555 |
| 0× | 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_4774 erf-erfc_binary64_4773 erf-odd_binary64_4772 if-if-and-not_binary64_4771 if-if-and_binary64_4770 if-if-or-not_binary64_4769 if-if-or_binary64_4768 if-not_binary64_4767 if-same_binary64_4766 if-false_binary64_4765 if-true_binary64_4764 not-gte_binary64_4763 not-lte_binary64_4762 not-gt_binary64_4761 not-lt_binary64_4760 gte-same_binary64_4759 lte-same_binary64_4758 gt-same_binary64_4757 lt-same_binary64_4756 sinh---cosh_binary64_4703 sinh-+-cosh_binary64_4702 sinh-cosh_binary64_4701 tanh-def-c_binary64_4700 tanh-def-b_binary64_4699 tanh-def-a_binary64_4698 cosh-def_binary64_4697 sinh-def_binary64_4696 tan-neg_binary64_4643 cos-neg_binary64_4642 sin-neg_binary64_4641 tan-0_binary64_4640 cos-0_binary64_4639 sin-0_binary64_4638 hang-m-tan_binary64_4637 hang-p-tan_binary64_4636 hang-m0-tan_binary64_4635 hang-p0-tan_binary64_4634 hang-0m-tan_binary64_4633 hang-0p-tan_binary64_4632 tan-+PI/2_binary64_4631 tan-+PI_binary64_4630 tan-PI_binary64_4629 tan-PI/3_binary64_4628 tan-PI/4_binary64_4627 tan-PI/6_binary64_4626 cos-+PI/2_binary64_4625 cos-+PI_binary64_4624 cos-PI_binary64_4623 cos-PI/2_binary64_4622 cos-PI/3_binary64_4621 cos-PI/4_binary64_4620 cos-PI/6_binary64_4619 sin-+PI/2_binary64_4618 sin-+PI_binary64_4617 sin-PI_binary64_4616 sin-PI/2_binary64_4615 sin-PI/3_binary64_4614 sin-PI/4_binary64_4613 sin-PI/6_binary64_4612 sub-1-sin_binary64_4611 sub-1-cos_binary64_4610 -1-add-sin_binary64_4609 -1-add-cos_binary64_4608 1-sub-sin_binary64_4607 1-sub-cos_binary64_4606 cos-sin-sum_binary64_4605 log-E_binary64_4601 log-pow_binary64_4600 log-rec_binary64_4599 log-div_binary64_4598 log-prod_binary64_4597 pow-base-0_binary64_4595 unpow1/3_binary64_4578 unpow3_binary64_4577 unpow2_binary64_4576 unpow1/2_binary64_4575 pow-plus_binary64_4574 exp-to-pow_binary64_4573 pow-base-1_binary64_4571 unpow0_binary64_4570 unpow1_binary64_4569 unpow-1_binary64_4568 exp-lft-cube_binary64_4567 exp-lft-sqr_binary64_4566 exp-cbrt_binary64_4565 exp-sqrt_binary64_4564 exp-prod_binary64_4563 div-exp_binary64_4562 rec-exp_binary64_4561 prod-exp_binary64_4560 exp-diff_binary64_4559 exp-neg_binary64_4558 exp-sum_binary64_4557 e-exp-1_binary64_4556 exp-1-e_binary64_4554 exp-0_binary64_4553 rem-log-exp_binary64_4552 rem-exp-log_binary64_4551 cube-unmult_binary64_4548 cube-mult_binary64_4541 cube-div_binary64_4540 cube-prod_binary64_4539 cube-neg_binary64_4538 rem-3cbrt-rft_binary64_4537 rem-3cbrt-lft_binary64_4536 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 sqr-abs_binary64_4526 sqr-neg_binary64_4525 rem-sqrt-square_binary64_4524 rem-square-sqrt_binary64_4523 times-frac_binary64_4517 div-sub_binary64_4516 mul-1-neg_binary64_4503 /-rgt-identity_binary64_4502 *-rgt-identity_binary64_4501 remove-double-neg_binary64_4499 --rgt-identity_binary64_4497 mul0-rgt_binary64_4494 mul0-lft_binary64_4493 div0_binary64_4492 *-inverses_binary64_4491 +-inverses_binary64_4490 lft-mult-inverse_binary64_4489 rgt-mult-inverse_binary64_4488 remove-double-div_binary64_4487 pow-sqr_binary64_4484 sqr-pow_binary64_4483 difference-of-sqr--1_binary64_4482 difference-of-sqr-1_binary64_4481 difference-of-squares_binary64_4480 unswap-sqr_binary64_4479 swap-sqr_binary64_4478 cancel-sign-sub_binary64_4476 distribute-neg-frac_binary64_4475 distribute-frac-neg_binary64_4474 distribute-neg-out_binary64_4473 distribute-rgt1-in_binary64_4467 distribute-lft1-in_binary64_4466 distribute-rgt-out--_binary64_4465 distribute-rgt-out_binary64_4464 distribute-lft-out--_binary64_4463 distribute-lft-out_binary64_4462 distribute-lft-in_binary64_4460 count-2_binary64_4459 associate-/l/_binary64_4458 associate-/r/_binary64_4457 associate-/l*_binary64_4456 associate-/r*_binary64_4455 associate-*l/_binary64_4454 associate-*r/_binary64_4453 associate-*l*_binary64_4452 associate-*r*_binary64_4451 associate--l-_binary64_4449 associate--l+_binary64_4448 associate-+l+_binary64_4444 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 22 |
| 1 | 15 | 22 |
| 2 | 23 | 22 |
| 3 | 33 | 22 |
| 4 | 47 | 22 |
| 5 | 74 | 22 |
| 6 | 82 | 22 |
| 7 | 88 | 22 |
| 8 | 74 | 22 |
| 0 | 2 | 2 |
| 1 | 2 | 2 |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 99.9% | 0.1% | 2 |
| 0% | 99.9% | 0.1% | 3 |
| 0% | 99.9% | 0.1% | 4 |
| 37.5% | 62.4% | 0.1% | 5 |
| 43.7% | 56.2% | 0.1% | 6 |
| 71.8% | 28.1% | 0.1% | 7 |
| 73.4% | 25% | 1.7% | 8 |
| 80.4% | 16.4% | 3.2% | 9 |
| 80.8% | 14% | 5.2% | 10 |
| 84.1% | 8.8% | 7.1% | 11 |
| 84.2% | 7.4% | 8.4% | 12 |
| 85.8% | 4.5% | 9.7% | 13 |
| 85.8% | 3.8% | 10.4% | 14 |
Compiled 8 to 7 computations (12.5% saved)
| 1× | intervals |
| 6.0ms | 256× | body | 128 | valid |
| 0.0ms | 10× | body | 128 | invalid |
Compiled 15 to 15 computations (0% saved)
| 1× | egg-herbie |
| 15× | sub-neg_binary64_4504 |
| 14× | cancel-sign-sub-inv_binary64_4477 |
| 10× | distribute-rgt-in_binary64_4461 |
| 9× | neg-mul-1_binary64_4507 |
| 8× | associate--r+_binary64_4447 |
| 7× | unsub-neg_binary64_4505 |
| 6× | neg-sub0_binary64_4506 associate--r-_binary64_4450 |
| 5× | distribute-neg-in_binary64_4472 distribute-lft-neg-out_binary64_4470 distribute-rgt-neg-in_binary64_4469 distribute-lft-in_binary64_4460 |
| 4× | *-lft-identity_binary64_4500 sub0-neg_binary64_4498 associate-+l-_binary64_4446 +-commutative_binary64_4441 |
| 3× | +-lft-identity_binary64_4495 distribute-rgt-neg-out_binary64_4471 associate-+l+_binary64_4444 *-commutative_binary64_4442 |
| 2× | *-rgt-identity_binary64_4501 |
| 1× | 1-exp_binary64_4555 remove-double-neg_binary64_4499 --rgt-identity_binary64_4497 +-rgt-identity_binary64_4496 distribute-lft-neg-in_binary64_4468 associate--l+_binary64_4448 associate-+r-_binary64_4445 associate-+r+_binary64_4443 |
| 0× | 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_4774 erf-erfc_binary64_4773 erf-odd_binary64_4772 if-if-and-not_binary64_4771 if-if-and_binary64_4770 if-if-or-not_binary64_4769 if-if-or_binary64_4768 if-not_binary64_4767 if-same_binary64_4766 if-false_binary64_4765 if-true_binary64_4764 not-gte_binary64_4763 not-lte_binary64_4762 not-gt_binary64_4761 not-lt_binary64_4760 gte-same_binary64_4759 lte-same_binary64_4758 gt-same_binary64_4757 lt-same_binary64_4756 sinh---cosh_binary64_4703 sinh-+-cosh_binary64_4702 sinh-cosh_binary64_4701 tanh-def-c_binary64_4700 tanh-def-b_binary64_4699 tanh-def-a_binary64_4698 cosh-def_binary64_4697 sinh-def_binary64_4696 tan-neg_binary64_4643 cos-neg_binary64_4642 sin-neg_binary64_4641 tan-0_binary64_4640 cos-0_binary64_4639 sin-0_binary64_4638 hang-m-tan_binary64_4637 hang-p-tan_binary64_4636 hang-m0-tan_binary64_4635 hang-p0-tan_binary64_4634 hang-0m-tan_binary64_4633 hang-0p-tan_binary64_4632 tan-+PI/2_binary64_4631 tan-+PI_binary64_4630 tan-PI_binary64_4629 tan-PI/3_binary64_4628 tan-PI/4_binary64_4627 tan-PI/6_binary64_4626 cos-+PI/2_binary64_4625 cos-+PI_binary64_4624 cos-PI_binary64_4623 cos-PI/2_binary64_4622 cos-PI/3_binary64_4621 cos-PI/4_binary64_4620 cos-PI/6_binary64_4619 sin-+PI/2_binary64_4618 sin-+PI_binary64_4617 sin-PI_binary64_4616 sin-PI/2_binary64_4615 sin-PI/3_binary64_4614 sin-PI/4_binary64_4613 sin-PI/6_binary64_4612 sub-1-sin_binary64_4611 sub-1-cos_binary64_4610 -1-add-sin_binary64_4609 -1-add-cos_binary64_4608 1-sub-sin_binary64_4607 1-sub-cos_binary64_4606 cos-sin-sum_binary64_4605 log-E_binary64_4601 log-pow_binary64_4600 log-rec_binary64_4599 log-div_binary64_4598 log-prod_binary64_4597 pow-base-0_binary64_4595 unpow1/3_binary64_4578 unpow3_binary64_4577 unpow2_binary64_4576 unpow1/2_binary64_4575 pow-plus_binary64_4574 exp-to-pow_binary64_4573 pow-base-1_binary64_4571 unpow0_binary64_4570 unpow1_binary64_4569 unpow-1_binary64_4568 exp-lft-cube_binary64_4567 exp-lft-sqr_binary64_4566 exp-cbrt_binary64_4565 exp-sqrt_binary64_4564 exp-prod_binary64_4563 div-exp_binary64_4562 rec-exp_binary64_4561 prod-exp_binary64_4560 exp-diff_binary64_4559 exp-neg_binary64_4558 exp-sum_binary64_4557 e-exp-1_binary64_4556 exp-1-e_binary64_4554 exp-0_binary64_4553 rem-log-exp_binary64_4552 rem-exp-log_binary64_4551 cube-unmult_binary64_4548 cube-mult_binary64_4541 cube-div_binary64_4540 cube-prod_binary64_4539 cube-neg_binary64_4538 rem-3cbrt-rft_binary64_4537 rem-3cbrt-lft_binary64_4536 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 sqr-abs_binary64_4526 sqr-neg_binary64_4525 rem-sqrt-square_binary64_4524 rem-square-sqrt_binary64_4523 times-frac_binary64_4517 div-sub_binary64_4516 mul-1-neg_binary64_4503 /-rgt-identity_binary64_4502 mul0-rgt_binary64_4494 mul0-lft_binary64_4493 div0_binary64_4492 *-inverses_binary64_4491 +-inverses_binary64_4490 lft-mult-inverse_binary64_4489 rgt-mult-inverse_binary64_4488 remove-double-div_binary64_4487 pow-sqr_binary64_4484 sqr-pow_binary64_4483 difference-of-sqr--1_binary64_4482 difference-of-sqr-1_binary64_4481 difference-of-squares_binary64_4480 unswap-sqr_binary64_4479 swap-sqr_binary64_4478 cancel-sign-sub_binary64_4476 distribute-neg-frac_binary64_4475 distribute-frac-neg_binary64_4474 distribute-neg-out_binary64_4473 distribute-rgt1-in_binary64_4467 distribute-lft1-in_binary64_4466 distribute-rgt-out--_binary64_4465 distribute-rgt-out_binary64_4464 distribute-lft-out--_binary64_4463 distribute-lft-out_binary64_4462 count-2_binary64_4459 associate-/l/_binary64_4458 associate-/r/_binary64_4457 associate-/l*_binary64_4456 associate-/r*_binary64_4455 associate-*l/_binary64_4454 associate-*r/_binary64_4453 associate-*l*_binary64_4452 associate-*r*_binary64_4451 associate--l-_binary64_4449 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 9 | 11 |
| 2 | 14 | 11 |
| 3 | 20 | 11 |
| 4 | 26 | 11 |
| 5 | 41 | 11 |
| 6 | 64 | 11 |
| 7 | 77 | 11 |
| 8 | 89 | 11 |
| 9 | 91 | 11 |
| 10 | 85 | 11 |
| 11 | 71 | 11 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 1 | 1 |
Compiled 7 to 6 computations (14.3% saved)
Found 1 expressions with local error:
| 0.0b | (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)) |
| 1× | rewrite-expression-head |
| 9× | add-cube-cbrt_binary64_4546 add-sqr-sqrt_binary64_4533 times-frac_binary64_4517 *-un-lft-identity_binary64_4511 |
| 3× | add-exp-log_binary64_4549 add-cbrt-cube_binary64_4547 associate-/l*_binary64_4456 associate-/r*_binary64_4455 |
| 1× | pow1_binary64_4572 div-exp_binary64_4562 add-log-exp_binary64_4550 cbrt-undiv_binary64_4545 frac-2neg_binary64_4522 clear-num_binary64_4510 div-inv_binary64_4508 |
1 calls:
| 3.0ms | (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)) |
Compiled 421 to 90 computations (78.6% saved)
1 calls:
| 108.0ms | (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)) |
Compiled 126 to 78 computations (38.1% saved)
| 1× | egg-herbie |
| 603× | unsub-neg_binary64_4505 |
| 532× | div-sub_binary64_4516 |
| 443× | associate-*l*_binary64_4452 |
| 410× | distribute-rgt-in_binary64_4461 |
| 385× | distribute-lft-in_binary64_4460 |
| 273× | associate-/l/_binary64_4458 |
| 248× | times-frac_binary64_4517 |
| 242× | associate-/l*_binary64_4456 |
| 222× | neg-sub0_binary64_4506 |
| 200× | neg-mul-1_binary64_4507 |
| 136× | associate-/r/_binary64_4457 |
| 126× | associate-/r*_binary64_4455 |
| 106× | associate-*l/_binary64_4454 |
| 88× | sub-neg_binary64_4504 |
| 82× | distribute-rgt-neg-out_binary64_4471 |
| 78× | distribute-frac-neg_binary64_4474 |
| 70× | associate-*r/_binary64_4453 |
| 67× | distribute-lft-neg-out_binary64_4470 |
| 44× | *-commutative_binary64_4442 |
| 41× | associate-*r*_binary64_4451 |
| 23× | *-lft-identity_binary64_4500 |
| 21× | cancel-sign-sub-inv_binary64_4477 |
| 18× | /-rgt-identity_binary64_4502 distribute-neg-in_binary64_4472 |
| 15× | div0_binary64_4492 |
| 14× | distribute-rgt-neg-in_binary64_4469 distribute-lft-neg-in_binary64_4468 distribute-rgt-out_binary64_4464 |
| 13× | *-rgt-identity_binary64_4501 unswap-sqr_binary64_4479 associate-+l+_binary64_4444 |
| 10× | distribute-neg-out_binary64_4473 associate--l-_binary64_4449 associate-+l-_binary64_4446 |
| 9× | sqr-pow_binary64_4483 +-commutative_binary64_4441 |
| 8× | distribute-lft-out_binary64_4462 associate-+r+_binary64_4443 |
| 7× | sqr-neg_binary64_4525 |
| 6× | cube-unmult_binary64_4548 distribute-neg-frac_binary64_4475 |
| 5× | sub0-neg_binary64_4498 mul0-rgt_binary64_4494 mul0-lft_binary64_4493 associate--l+_binary64_4448 |
| 4× | log-div_binary64_4598 --rgt-identity_binary64_4497 |
| 3× | +-rgt-identity_binary64_4496 distribute-rgt-out--_binary64_4465 associate--r-_binary64_4450 associate-+r-_binary64_4445 |
| 2× | log-prod_binary64_4597 cube-div_binary64_4540 cube-prod_binary64_4539 sqr-abs_binary64_4526 mul-1-neg_binary64_4503 remove-double-neg_binary64_4499 remove-double-div_binary64_4487 associate--r+_binary64_4447 |
| 1× | log-rec_binary64_4599 1-exp_binary64_4555 *-inverses_binary64_4491 distribute-rgt1-in_binary64_4467 distribute-lft1-in_binary64_4466 count-2_binary64_4459 |
| 0× | 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_4774 erf-erfc_binary64_4773 erf-odd_binary64_4772 if-if-and-not_binary64_4771 if-if-and_binary64_4770 if-if-or-not_binary64_4769 if-if-or_binary64_4768 if-not_binary64_4767 if-same_binary64_4766 if-false_binary64_4765 if-true_binary64_4764 not-gte_binary64_4763 not-lte_binary64_4762 not-gt_binary64_4761 not-lt_binary64_4760 gte-same_binary64_4759 lte-same_binary64_4758 gt-same_binary64_4757 lt-same_binary64_4756 sinh---cosh_binary64_4703 sinh-+-cosh_binary64_4702 sinh-cosh_binary64_4701 tanh-def-c_binary64_4700 tanh-def-b_binary64_4699 tanh-def-a_binary64_4698 cosh-def_binary64_4697 sinh-def_binary64_4696 tan-neg_binary64_4643 cos-neg_binary64_4642 sin-neg_binary64_4641 tan-0_binary64_4640 cos-0_binary64_4639 sin-0_binary64_4638 hang-m-tan_binary64_4637 hang-p-tan_binary64_4636 hang-m0-tan_binary64_4635 hang-p0-tan_binary64_4634 hang-0m-tan_binary64_4633 hang-0p-tan_binary64_4632 tan-+PI/2_binary64_4631 tan-+PI_binary64_4630 tan-PI_binary64_4629 tan-PI/3_binary64_4628 tan-PI/4_binary64_4627 tan-PI/6_binary64_4626 cos-+PI/2_binary64_4625 cos-+PI_binary64_4624 cos-PI_binary64_4623 cos-PI/2_binary64_4622 cos-PI/3_binary64_4621 cos-PI/4_binary64_4620 cos-PI/6_binary64_4619 sin-+PI/2_binary64_4618 sin-+PI_binary64_4617 sin-PI_binary64_4616 sin-PI/2_binary64_4615 sin-PI/3_binary64_4614 sin-PI/4_binary64_4613 sin-PI/6_binary64_4612 sub-1-sin_binary64_4611 sub-1-cos_binary64_4610 -1-add-sin_binary64_4609 -1-add-cos_binary64_4608 1-sub-sin_binary64_4607 1-sub-cos_binary64_4606 cos-sin-sum_binary64_4605 log-E_binary64_4601 log-pow_binary64_4600 pow-base-0_binary64_4595 unpow1/3_binary64_4578 unpow3_binary64_4577 unpow2_binary64_4576 unpow1/2_binary64_4575 pow-plus_binary64_4574 exp-to-pow_binary64_4573 pow-base-1_binary64_4571 unpow0_binary64_4570 unpow1_binary64_4569 unpow-1_binary64_4568 exp-lft-cube_binary64_4567 exp-lft-sqr_binary64_4566 exp-cbrt_binary64_4565 exp-sqrt_binary64_4564 exp-prod_binary64_4563 div-exp_binary64_4562 rec-exp_binary64_4561 prod-exp_binary64_4560 exp-diff_binary64_4559 exp-neg_binary64_4558 exp-sum_binary64_4557 e-exp-1_binary64_4556 exp-1-e_binary64_4554 exp-0_binary64_4553 rem-log-exp_binary64_4552 rem-exp-log_binary64_4551 cube-mult_binary64_4541 cube-neg_binary64_4538 rem-3cbrt-rft_binary64_4537 rem-3cbrt-lft_binary64_4536 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 rem-sqrt-square_binary64_4524 rem-square-sqrt_binary64_4523 +-lft-identity_binary64_4495 +-inverses_binary64_4490 lft-mult-inverse_binary64_4489 rgt-mult-inverse_binary64_4488 pow-sqr_binary64_4484 difference-of-sqr--1_binary64_4482 difference-of-sqr-1_binary64_4481 difference-of-squares_binary64_4480 swap-sqr_binary64_4478 cancel-sign-sub_binary64_4476 distribute-lft-out--_binary64_4463 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 53 | 619 |
| 1 | 94 | 573 |
| 2 | 212 | 573 |
| 3 | 576 | 573 |
| 4 | 1599 | 573 |
| 5 | 4371 | 573 |
| 6 | 5220 | 573 |
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 5 | 2 | 7 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 5 | 3 | 8 |
Compiled 102 to 39 computations (61.8% saved)
Found 4 expressions with local error:
| 0.0b | (sqrt.f64 (fabs.f64 (-.f64 x y))) |
| 0.0b | (sqrt.f64 (fabs.f64 (-.f64 x y))) |
| 0.3b | (*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y))) |
| 0.3b | (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)) |
| 1× | rewrite-expression-head |
| 54× | add-sqr-sqrt_binary64_4533 |
| 40× | times-frac_binary64_4517 |
| 36× | add-cube-cbrt_binary64_4546 *-un-lft-identity_binary64_4511 |
| 35× | sqrt-prod_binary64_4527 |
| 22× | associate-*r*_binary64_4451 |
| 11× | add-exp-log_binary64_4549 add-cbrt-cube_binary64_4547 |
| 8× | pow1_binary64_4572 |
| 6× | associate-/l*_binary64_4456 unswap-sqr_binary64_4479 associate-*l*_binary64_4452 |
| 4× | add-log-exp_binary64_4550 |
| 3× | associate-/r*_binary64_4455 |
| 2× | div-exp_binary64_4562 cbrt-undiv_binary64_4545 div-inv_binary64_4508 prod-exp_binary64_4560 cbrt-unprod_binary64_4544 pow1/2_binary64_4591 sqrt-pow1_binary64_4529 rem-sqrt-square_binary64_4524 |
| 1× | frac-2neg_binary64_4522 clear-num_binary64_4510 pow-prod-down_binary64_4582 associate-*r/_binary64_4453 *-commutative_binary64_4442 |
4 calls:
| 12.0ms | (*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y))) |
| 4.0ms | (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)) |
| 1.0ms | (sqrt.f64 (fabs.f64 (-.f64 x y))) |
| 1.0ms | (sqrt.f64 (fabs.f64 (-.f64 x y))) |
Compiled 2743 to 343 computations (87.5% saved)
4 calls:
| 187.0ms | (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y)) |
| 112.0ms | (*.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (/.f64 (sqrt.f64 (fabs.f64 (-.f64 x y))) (fabs.f64 y))) |
| 71.0ms | (sqrt.f64 (fabs.f64 (-.f64 x y))) |
| 70.0ms | (sqrt.f64 (fabs.f64 (-.f64 x y))) |
Compiled 918 to 417 computations (54.6% saved)
| 1× | egg-herbie |
| 463× | div-sub_binary64_4516 |
| 392× | unswap-sqr_binary64_4479 |
| 382× | associate-/l*_binary64_4456 |
| 300× | times-frac_binary64_4517 |
| 287× | associate-*l*_binary64_4452 |
| 256× | sub-neg_binary64_4504 |
| 236× | associate-*l/_binary64_4454 |
| 211× | associate-*r*_binary64_4451 |
| 198× | associate--r+_binary64_4447 |
| 196× | associate-/l/_binary64_4458 |
| 184× | associate-*r/_binary64_4453 |
| 179× | sqr-pow_binary64_4483 |
| 160× | unsub-neg_binary64_4505 |
| 142× | distribute-rgt-in_binary64_4461 |
| 129× | associate--r-_binary64_4450 |
| 108× | distribute-lft-in_binary64_4460 |
| 90× | associate-/r*_binary64_4455 |
| 72× | log-prod_binary64_4597 |
| 71× | log-div_binary64_4598 |
| 64× | cube-div_binary64_4540 neg-mul-1_binary64_4507 |
| 62× | cancel-sign-sub-inv_binary64_4477 |
| 61× | neg-sub0_binary64_4506 |
| 60× | *-commutative_binary64_4442 |
| 58× | cube-prod_binary64_4539 |
| 57× | associate-/r/_binary64_4457 |
| 55× | *-lft-identity_binary64_4500 pow-sqr_binary64_4484 |
| 50× | remove-double-div_binary64_4487 |
| 48× | exp-prod_binary64_4563 associate-+l+_binary64_4444 |
| 45× | *-rgt-identity_binary64_4501 +-commutative_binary64_4441 |
| 43× | associate--l+_binary64_4448 |
| 41× | rem-sqrt-square_binary64_4524 |
| 38× | associate-+l-_binary64_4446 |
| 37× | distribute-neg-in_binary64_4472 |
| 30× | associate--l-_binary64_4449 |
| 29× | /-rgt-identity_binary64_4502 |
| 24× | associate-+r+_binary64_4443 |
| 22× | log-rec_binary64_4599 unpow3_binary64_4577 swap-sqr_binary64_4478 |
| 20× | cube-mult_binary64_4541 distribute-neg-out_binary64_4473 |
| 17× | sqr-neg_binary64_4525 |
| 15× | distribute-lft-neg-out_binary64_4470 |
| 14× | distribute-rgt-neg-out_binary64_4471 |
| 13× | associate-+r-_binary64_4445 |
| 12× | distribute-lft-neg-in_binary64_4468 |
| 10× | unpow1/2_binary64_4575 mul0-rgt_binary64_4494 mul0-lft_binary64_4493 distribute-rgt-neg-in_binary64_4469 |
| 9× | pow-plus_binary64_4574 --rgt-identity_binary64_4497 |
| 8× | exp-diff_binary64_4559 |
| 7× | cube-unmult_binary64_4548 +-rgt-identity_binary64_4496 distribute-neg-frac_binary64_4475 distribute-rgt-out_binary64_4464 |
| 6× | log-pow_binary64_4600 |
| 5× | count-2_binary64_4459 |
| 4× | remove-double-neg_binary64_4499 |
| 3× | unpow2_binary64_4576 sub0-neg_binary64_4498 +-lft-identity_binary64_4495 distribute-rgt-out--_binary64_4465 distribute-lft-out--_binary64_4463 |
| 2× | unpow1_binary64_4569 sqr-abs_binary64_4526 rem-square-sqrt_binary64_4523 +-inverses_binary64_4490 distribute-lft1-in_binary64_4466 |
| 1× | exp-sum_binary64_4557 1-exp_binary64_4555 exp-1-e_binary64_4554 div0_binary64_4492 distribute-rgt1-in_binary64_4467 distribute-lft-out_binary64_4462 |
| 0× | 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_4774 erf-erfc_binary64_4773 erf-odd_binary64_4772 if-if-and-not_binary64_4771 if-if-and_binary64_4770 if-if-or-not_binary64_4769 if-if-or_binary64_4768 if-not_binary64_4767 if-same_binary64_4766 if-false_binary64_4765 if-true_binary64_4764 not-gte_binary64_4763 not-lte_binary64_4762 not-gt_binary64_4761 not-lt_binary64_4760 gte-same_binary64_4759 lte-same_binary64_4758 gt-same_binary64_4757 lt-same_binary64_4756 sinh---cosh_binary64_4703 sinh-+-cosh_binary64_4702 sinh-cosh_binary64_4701 tanh-def-c_binary64_4700 tanh-def-b_binary64_4699 tanh-def-a_binary64_4698 cosh-def_binary64_4697 sinh-def_binary64_4696 tan-neg_binary64_4643 cos-neg_binary64_4642 sin-neg_binary64_4641 tan-0_binary64_4640 cos-0_binary64_4639 sin-0_binary64_4638 hang-m-tan_binary64_4637 hang-p-tan_binary64_4636 hang-m0-tan_binary64_4635 hang-p0-tan_binary64_4634 hang-0m-tan_binary64_4633 hang-0p-tan_binary64_4632 tan-+PI/2_binary64_4631 tan-+PI_binary64_4630 tan-PI_binary64_4629 tan-PI/3_binary64_4628 tan-PI/4_binary64_4627 tan-PI/6_binary64_4626 cos-+PI/2_binary64_4625 cos-+PI_binary64_4624 cos-PI_binary64_4623 cos-PI/2_binary64_4622 cos-PI/3_binary64_4621 cos-PI/4_binary64_4620 cos-PI/6_binary64_4619 sin-+PI/2_binary64_4618 sin-+PI_binary64_4617 sin-PI_binary64_4616 sin-PI/2_binary64_4615 sin-PI/3_binary64_4614 sin-PI/4_binary64_4613 sin-PI/6_binary64_4612 sub-1-sin_binary64_4611 sub-1-cos_binary64_4610 -1-add-sin_binary64_4609 -1-add-cos_binary64_4608 1-sub-sin_binary64_4607 1-sub-cos_binary64_4606 cos-sin-sum_binary64_4605 log-E_binary64_4601 pow-base-0_binary64_4595 unpow1/3_binary64_4578 exp-to-pow_binary64_4573 pow-base-1_binary64_4571 unpow0_binary64_4570 unpow-1_binary64_4568 exp-lft-cube_binary64_4567 exp-lft-sqr_binary64_4566 exp-cbrt_binary64_4565 exp-sqrt_binary64_4564 div-exp_binary64_4562 rec-exp_binary64_4561 prod-exp_binary64_4560 exp-neg_binary64_4558 e-exp-1_binary64_4556 exp-0_binary64_4553 rem-log-exp_binary64_4552 rem-exp-log_binary64_4551 cube-neg_binary64_4538 rem-3cbrt-rft_binary64_4537 rem-3cbrt-lft_binary64_4536 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 mul-1-neg_binary64_4503 *-inverses_binary64_4491 lft-mult-inverse_binary64_4489 rgt-mult-inverse_binary64_4488 difference-of-sqr--1_binary64_4482 difference-of-sqr-1_binary64_4481 difference-of-squares_binary64_4480 cancel-sign-sub_binary64_4476 distribute-frac-neg_binary64_4474 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 103 | 2563 |
| 1 | 203 | 2454 |
| 2 | 686 | 2398 |
| 3 | 2152 | 2398 |
| 4 | 2636 | 2398 |
| 5 | 4222 | 2398 |
| 6 | 4744 | 2398 |
| 7 | 5443 | 2398 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 69 | 0 | 69 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 69 | 3 | 72 |
Compiled 1287 to 177 computations (86.2% saved)
Found 3 expressions with local error:
| 0.0b | (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)) |
| 2.5b | (exp.f64 (log.f64 (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)))) |
| 4.4b | (log.f64 (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))) |
| 1× | rewrite-expression-head |
| 27× | times-frac_binary64_4517 |
| 26× | add-cube-cbrt_binary64_4546 log-prod_binary64_4597 add-sqr-sqrt_binary64_4533 *-un-lft-identity_binary64_4511 |
| 13× | exp-sum_binary64_4557 |
| 8× | add-exp-log_binary64_4549 |
| 5× | pow1_binary64_4572 add-cbrt-cube_binary64_4547 |
| 4× | exp-prod_binary64_4563 |
| 3× | div-inv_binary64_4508 add-log-exp_binary64_4550 associate-/l*_binary64_4456 associate-/r*_binary64_4455 |
| 2× | log-pow_binary64_4600 log-div_binary64_4598 div-exp_binary64_4562 rem-log-exp_binary64_4552 |
| 1× | exp-diff_binary64_4559 rem-exp-log_binary64_4551 cbrt-undiv_binary64_4545 frac-2neg_binary64_4522 clear-num_binary64_4510 |
3 calls:
| 7.0ms | (exp.f64 (log.f64 (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)))) |
| 3.0ms | (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)) |
| 3.0ms | (log.f64 (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))) |
Compiled 1421 to 310 computations (78.2% saved)
3 calls:
| 337.0ms | (exp.f64 (log.f64 (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)))) |
| 332.0ms | (log.f64 (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))) |
| 109.0ms | (/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y)) |
Compiled 486 to 296 computations (39.1% saved)
| 1× | egg-herbie |
| 432× | associate--l-_binary64_4449 |
| 421× | log-div_binary64_4598 |
| 401× | exp-diff_binary64_4559 |
| 340× | times-frac_binary64_4517 |
| 303× | associate-/l*_binary64_4456 |
| 269× | associate-/l/_binary64_4458 |
| 228× | div-exp_binary64_4562 |
| 202× | prod-exp_binary64_4560 |
| 185× | sub-neg_binary64_4504 |
| 180× | distribute-rgt-in_binary64_4461 |
| 177× | distribute-lft-in_binary64_4460 |
| 147× | associate-/r*_binary64_4455 |
| 143× | associate-*l*_binary64_4452 |
| 142× | associate-/r/_binary64_4457 |
| 131× | associate-*l/_binary64_4454 |
| 128× | exp-sum_binary64_4557 |
| 101× | associate--r-_binary64_4450 |
| 97× | associate-*r*_binary64_4451 |
| 85× | associate-*r/_binary64_4453 |
| 71× | log-prod_binary64_4597 |
| 62× | div-sub_binary64_4516 |
| 47× | exp-prod_binary64_4563 |
| 46× | cancel-sign-sub-inv_binary64_4477 |
| 43× | associate-+r-_binary64_4445 |
| 41× | associate-+l-_binary64_4446 |
| 36× | *-commutative_binary64_4442 |
| 30× | rec-exp_binary64_4561 |
| 27× | log-pow_binary64_4600 rem-exp-log_binary64_4551 +-commutative_binary64_4441 |
| 25× | unsub-neg_binary64_4505 |
| 24× | neg-mul-1_binary64_4507 associate-+l+_binary64_4444 |
| 23× | neg-sub0_binary64_4506 associate-+r+_binary64_4443 |
| 22× | associate--l+_binary64_4448 |
| 20× | log-rec_binary64_4599 distribute-rgt-neg-out_binary64_4471 distribute-lft-neg-out_binary64_4470 |
| 19× | sqr-pow_binary64_4483 |
| 18× | exp-to-pow_binary64_4573 |
| 15× | distribute-neg-in_binary64_4472 |
| 9× | /-rgt-identity_binary64_4502 count-2_binary64_4459 |
| 7× | +-rgt-identity_binary64_4496 |
| 6× | *-rgt-identity_binary64_4501 distribute-neg-out_binary64_4473 distribute-rgt-neg-in_binary64_4469 distribute-lft-neg-in_binary64_4468 |
| 5× | cube-prod_binary64_4539 swap-sqr_binary64_4478 distribute-rgt-out_binary64_4464 |
| 4× | cube-unmult_binary64_4548 *-lft-identity_binary64_4500 distribute-rgt1-in_binary64_4467 distribute-lft1-in_binary64_4466 |
| 3× | pow-sqr_binary64_4484 associate--r+_binary64_4447 |
| 2× | cube-div_binary64_4540 sqr-abs_binary64_4526 sqr-neg_binary64_4525 sub0-neg_binary64_4498 distribute-rgt-out--_binary64_4465 distribute-lft-out--_binary64_4463 distribute-lft-out_binary64_4462 |
| 1× | unpow3_binary64_4577 exp-lft-sqr_binary64_4566 1-exp_binary64_4555 exp-1-e_binary64_4554 rem-log-exp_binary64_4552 cube-mult_binary64_4541 remove-double-neg_binary64_4499 *-inverses_binary64_4491 +-inverses_binary64_4490 unswap-sqr_binary64_4479 distribute-neg-frac_binary64_4475 |
| 0× | 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_4774 erf-erfc_binary64_4773 erf-odd_binary64_4772 if-if-and-not_binary64_4771 if-if-and_binary64_4770 if-if-or-not_binary64_4769 if-if-or_binary64_4768 if-not_binary64_4767 if-same_binary64_4766 if-false_binary64_4765 if-true_binary64_4764 not-gte_binary64_4763 not-lte_binary64_4762 not-gt_binary64_4761 not-lt_binary64_4760 gte-same_binary64_4759 lte-same_binary64_4758 gt-same_binary64_4757 lt-same_binary64_4756 sinh---cosh_binary64_4703 sinh-+-cosh_binary64_4702 sinh-cosh_binary64_4701 tanh-def-c_binary64_4700 tanh-def-b_binary64_4699 tanh-def-a_binary64_4698 cosh-def_binary64_4697 sinh-def_binary64_4696 tan-neg_binary64_4643 cos-neg_binary64_4642 sin-neg_binary64_4641 tan-0_binary64_4640 cos-0_binary64_4639 sin-0_binary64_4638 hang-m-tan_binary64_4637 hang-p-tan_binary64_4636 hang-m0-tan_binary64_4635 hang-p0-tan_binary64_4634 hang-0m-tan_binary64_4633 hang-0p-tan_binary64_4632 tan-+PI/2_binary64_4631 tan-+PI_binary64_4630 tan-PI_binary64_4629 tan-PI/3_binary64_4628 tan-PI/4_binary64_4627 tan-PI/6_binary64_4626 cos-+PI/2_binary64_4625 cos-+PI_binary64_4624 cos-PI_binary64_4623 cos-PI/2_binary64_4622 cos-PI/3_binary64_4621 cos-PI/4_binary64_4620 cos-PI/6_binary64_4619 sin-+PI/2_binary64_4618 sin-+PI_binary64_4617 sin-PI_binary64_4616 sin-PI/2_binary64_4615 sin-PI/3_binary64_4614 sin-PI/4_binary64_4613 sin-PI/6_binary64_4612 sub-1-sin_binary64_4611 sub-1-cos_binary64_4610 -1-add-sin_binary64_4609 -1-add-cos_binary64_4608 1-sub-sin_binary64_4607 1-sub-cos_binary64_4606 cos-sin-sum_binary64_4605 log-E_binary64_4601 pow-base-0_binary64_4595 unpow1/3_binary64_4578 unpow2_binary64_4576 unpow1/2_binary64_4575 pow-plus_binary64_4574 pow-base-1_binary64_4571 unpow0_binary64_4570 unpow1_binary64_4569 unpow-1_binary64_4568 exp-lft-cube_binary64_4567 exp-cbrt_binary64_4565 exp-sqrt_binary64_4564 exp-neg_binary64_4558 e-exp-1_binary64_4556 exp-0_binary64_4553 cube-neg_binary64_4538 rem-3cbrt-rft_binary64_4537 rem-3cbrt-lft_binary64_4536 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 rem-sqrt-square_binary64_4524 rem-square-sqrt_binary64_4523 mul-1-neg_binary64_4503 --rgt-identity_binary64_4497 +-lft-identity_binary64_4495 mul0-rgt_binary64_4494 mul0-lft_binary64_4493 div0_binary64_4492 lft-mult-inverse_binary64_4489 rgt-mult-inverse_binary64_4488 remove-double-div_binary64_4487 difference-of-sqr--1_binary64_4482 difference-of-sqr-1_binary64_4481 difference-of-squares_binary64_4480 cancel-sign-sub_binary64_4476 distribute-frac-neg_binary64_4474 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 112 | 1894 |
| 1 | 175 | 1762 |
| 2 | 403 | 1696 |
| 3 | 1267 | 1678 |
| 4 | 3814 | 1656 |
| 5 | 4976 | 1656 |
| 6 | 5061 | 1656 |
3 alts after pruning (0 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 52 | 0 | 52 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 52 | 3 | 55 |
Compiled 767 to 184 computations (76% saved)
Total 0.0b remaining (90.7%)
Threshold costs 0.0b (90.7%)
Compiled 570 to 380 computations (33.3% saved)
| 1× | egg-herbie |
| 2× | sub-neg_binary64_4504 +-commutative_binary64_4441 |
| 1× | neg-mul-1_binary64_4507 neg-sub0_binary64_4506 *-commutative_binary64_4442 |
| 0× | 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_4771 if-if-and_binary64_4770 if-if-or-not_binary64_4769 if-if-or_binary64_4768 if-not_binary64_4767 if-same_binary64_4766 if-false_binary64_4765 if-true_binary64_4764 tan-0_binary64_4640 cos-0_binary64_4639 sin-0_binary64_4638 unpow1_binary64_4569 e-exp-1_binary64_4556 1-exp_binary64_4555 exp-1-e_binary64_4554 exp-0_binary64_4553 sqr-abs_binary64_4526 sqr-neg_binary64_4525 unsub-neg_binary64_4505 mul-1-neg_binary64_4503 /-rgt-identity_binary64_4502 *-rgt-identity_binary64_4501 *-lft-identity_binary64_4500 remove-double-neg_binary64_4499 sub0-neg_binary64_4498 --rgt-identity_binary64_4497 +-rgt-identity_binary64_4496 +-lft-identity_binary64_4495 cancel-sign-sub-inv_binary64_4477 cancel-sign-sub_binary64_4476 distribute-neg-frac_binary64_4475 distribute-frac-neg_binary64_4474 distribute-neg-out_binary64_4473 distribute-neg-in_binary64_4472 distribute-rgt-neg-out_binary64_4471 distribute-lft-neg-out_binary64_4470 distribute-rgt-neg-in_binary64_4469 distribute-lft-neg-in_binary64_4468 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 9 | 11 |
| 2 | 14 | 11 |
| 3 | 16 | 11 |
| 4 | 17 | 11 |
| 5 | 17 | 11 |
| 1× | intervals |
| 192.0ms | 8000× | body | 128 | valid |
| 5.0ms | 222× | body | 128 | invalid |
Compiled 199 to 135 computations (32.2% saved)
Loading profile data...