Details

Time bar (total: 3.4s)

analyze296.0ms (8.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
6.2%93.6%0.1%6
15.6%84.3%0.1%7
29.6%70.2%0.1%8
33.5%63.2%3.3%9
43.3%49.5%7.2%10
52.1%39.2%8.7%11
54.5%34.2%11.3%12
60.6%25.6%13.8%13
65.2%20.4%14.4%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample17.0ms (0.5%)

Algorithm
intervals
Results
7.0ms256×body128valid
0.0ms18×body128invalid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify1.0s (30%)

Algorithm
egg-herbie
Rules
678×exp-prod_binary64_4563
595×swap-sqr_binary64_4478
550×associate-/l*_binary64_4456
437×distribute-rgt-neg-in_binary64_4469
221×distribute-rgt-out_binary64_4464
211×associate-*l*_binary64_4452
182×sub-neg_binary64_4504
177×distribute-rgt-out--_binary64_4465 associate-*r*_binary64_4451
168×distribute-rgt1-in_binary64_4467
144×distribute-lft-out_binary64_4462
136×distribute-lft-neg-in_binary64_4468
132×distribute-lft-out--_binary64_4463
112×cancel-sign-sub-inv_binary64_4477
82×unsub-neg_binary64_4505
67×distribute-rgt-neg-out_binary64_4471
50×distribute-rgt-in_binary64_4461
43×distribute-lft-neg-out_binary64_4470
34×neg-sub0_binary64_4506 distribute-neg-in_binary64_4472
31×neg-mul-1_binary64_4507 distribute-lft-in_binary64_4460
23×sqr-pow_binary64_4483
20×distribute-lft1-in_binary64_4466 associate--r+_binary64_4447
18×*-rgt-identity_binary64_4501
16×distribute-neg-out_binary64_4473
15×exp-sum_binary64_4557
14×+-commutative_binary64_4441
13×pow-plus_binary64_4574 *-lft-identity_binary64_4500
12×mul0-rgt_binary64_4494 mul0-lft_binary64_4493 +-inverses_binary64_4490 associate-+l-_binary64_4446 associate-+r+_binary64_4443 *-commutative_binary64_4442
10×exp-diff_binary64_4559 associate-+r-_binary64_4445 associate-+l+_binary64_4444
difference-of-squares_binary64_4480
count-2_binary64_4459
remove-double-neg_binary64_4499 sub0-neg_binary64_4498 pow-sqr_binary64_4484
+-rgt-identity_binary64_4496 unswap-sqr_binary64_4479 associate--l+_binary64_4448
exp-lft-sqr_binary64_4566 cube-unmult_binary64_4548 div-sub_binary64_4516 --rgt-identity_binary64_4497
pow-base-1_binary64_4571 cube-prod_binary64_4539 +-lft-identity_binary64_4495 difference-of-sqr-1_binary64_4481
prod-exp_binary64_4560 1-exp_binary64_4555 exp-1-e_binary64_4554 mul-1-neg_binary64_4503 div0_binary64_4492 distribute-frac-neg_binary64_4474 associate--r-_binary64_4450
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 exp-to-pow_binary64_4573 unpow0_binary64_4570 unpow1_binary64_4569 unpow-1_binary64_4568 exp-lft-cube_binary64_4567 exp-cbrt_binary64_4565 exp-sqrt_binary64_4564 div-exp_binary64_4562 rec-exp_binary64_4561 exp-neg_binary64_4558 e-exp-1_binary64_4556 exp-0_binary64_4553 rem-log-exp_binary64_4552 rem-exp-log_binary64_4551 cube-mult_binary64_4541 cube-div_binary64_4540 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 /-rgt-identity_binary64_4502 *-inverses_binary64_4491 lft-mult-inverse_binary64_4489 rgt-mult-inverse_binary64_4488 remove-double-div_binary64_4487 difference-of-sqr--1_binary64_4482 cancel-sign-sub_binary64_4476 distribute-neg-frac_binary64_4475 associate-/l/_binary64_4458 associate-/r/_binary64_4457 associate-/r*_binary64_4455 associate-*l/_binary64_4454 associate-*r/_binary64_4453 associate--l-_binary64_4449
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0913
11613
22613
34610
47410
512310
627110
7159110

prune4.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0b
Counts
3 → 2
Compiler

Compiled 32 to 25 computations (21.9% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite44.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-sqr-sqrt_binary64_4533 *-un-lft-identity_binary64_4511
add-cube-cbrt_binary64_4546
pow1_binary64_4572 add-exp-log_binary64_4549 add-log-exp_binary64_4550 add-cbrt-cube_binary64_4547 associate-*r*_binary64_4451
associate-*l*_binary64_4452 cancel-sign-sub-inv_binary64_4477
distribute-rgt-in_binary64_4461 distribute-lft-in_binary64_4460 associate-*r/_binary64_4453 associate--l+_binary64_4448
pow-prod-down_binary64_4582 prod-exp_binary64_4560 cbrt-unprod_binary64_4544 unswap-sqr_binary64_4479 flip3-+_binary64_4514 flip-+_binary64_4485 distribute-lft-out_binary64_4462 *-commutative_binary64_4442 diff-log_binary64_4603 flip3--_binary64_4515 sub-neg_binary64_4504 flip--_binary64_4486
Counts
2 → 39
Calls

2 calls:

6.0ms
(*.f64 x (+.f64 y z))
6.0ms
(-.f64 (*.f64 x (+.f64 y z)) z)
Compiler

Compiled 529 to 154 computations (70.9% saved)

series336.0ms (9.9%)

Error
0b
Counts
2 → 33
Calls

2 calls:

188.0ms
(-.f64 (*.f64 x (+.f64 y z)) z)
131.0ms
(*.f64 x (+.f64 y z))
Compiler

Compiled 606 to 344 computations (43.2% saved)

simplify123.0ms (3.7%)

Algorithm
egg-herbie
Rules
511×unswap-sqr_binary64_4479
378×distribute-rgt-in_binary64_4461
376×distribute-lft-in_binary64_4460
284×*-commutative_binary64_4442
243×unsub-neg_binary64_4505
180×sub-neg_binary64_4504
179×times-frac_binary64_4517
157×sqr-pow_binary64_4483 +-commutative_binary64_4441
133×distribute-neg-out_binary64_4473
128×neg-mul-1_binary64_4507
126×neg-sub0_binary64_4506
120×exp-prod_binary64_4563
104×exp-sum_binary64_4557
97×cancel-sign-sub-inv_binary64_4477
96×associate-+r+_binary64_4443
93×associate--l+_binary64_4448 associate-+l+_binary64_4444
87×difference-of-squares_binary64_4480
78×pow-sqr_binary64_4484
68×associate-*l*_binary64_4452
58×distribute-lft-neg-out_binary64_4470
57×distribute-rgt-neg-out_binary64_4471 associate-*r*_binary64_4451
56×associate--r+_binary64_4447
55×distribute-rgt-out_binary64_4464
47×*-rgt-identity_binary64_4501
45×*-lft-identity_binary64_4500
41×exp-diff_binary64_4559
38×cancel-sign-sub_binary64_4476
35×swap-sqr_binary64_4478
29×distribute-rgt-neg-in_binary64_4469
27×associate-+l-_binary64_4446
26×associate-+r-_binary64_4445
24×distribute-lft-neg-in_binary64_4468
23×cube-prod_binary64_4539
22×distribute-neg-in_binary64_4472
21×+-rgt-identity_binary64_4496
20×log-prod_binary64_4597 sub0-neg_binary64_4498
15×div-sub_binary64_4516
14×associate-/l*_binary64_4456
13×exp-to-pow_binary64_4573
12×sqr-neg_binary64_4525 mul0-rgt_binary64_4494 mul0-lft_binary64_4493 distribute-rgt-out--_binary64_4465
10×exp-neg_binary64_4558
unpow3_binary64_4577 distribute-frac-neg_binary64_4474
log-pow_binary64_4600 pow-plus_binary64_4574 cube-unmult_binary64_4548 remove-double-neg_binary64_4499 distribute-lft-out_binary64_4462 associate-/l/_binary64_4458
div-exp_binary64_4562 cube-mult_binary64_4541
pow-base-1_binary64_4571 mul-1-neg_binary64_4503 --rgt-identity_binary64_4497 distribute-rgt1-in_binary64_4467 associate-*r/_binary64_4453
cube-neg_binary64_4538 rem-sqrt-square_binary64_4524 /-rgt-identity_binary64_4502 distribute-lft1-in_binary64_4466 associate--r-_binary64_4450
prod-exp_binary64_4560 1-exp_binary64_4555 exp-1-e_binary64_4554 rem-log-exp_binary64_4552 rem-3cbrt-lft_binary64_4536 rem-square-sqrt_binary64_4523 +-lft-identity_binary64_4495 *-inverses_binary64_4491 rgt-mult-inverse_binary64_4488 count-2_binary64_4459 associate-/r/_binary64_4457 associate-/r*_binary64_4455 associate-*l/_binary64_4454
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-rec_binary64_4599 log-div_binary64_4598 pow-base-0_binary64_4595 unpow1/3_binary64_4578 unpow2_binary64_4576 unpow1/2_binary64_4575 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 rec-exp_binary64_4561 e-exp-1_binary64_4556 exp-0_binary64_4553 rem-exp-log_binary64_4551 cube-div_binary64_4540 rem-3cbrt-rft_binary64_4537 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 sqr-abs_binary64_4526 div0_binary64_4492 +-inverses_binary64_4490 lft-mult-inverse_binary64_4489 remove-double-div_binary64_4487 difference-of-sqr--1_binary64_4482 difference-of-sqr-1_binary64_4481 distribute-neg-frac_binary64_4475 distribute-lft-out--_binary64_4463 associate--l-_binary64_4449
Counts
72 → 77
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
086682
1216661
2636655
32075655
42742655

prune55.0ms (1.6%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New77077
Fresh011
Picked011
Done000
Total77279
Error
0b
Counts
79 → 2
Compiler

Compiled 1059 to 204 computations (80.7% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

0.0b
(*.f64 (-.f64 x 1) z)
0.0b
(+.f64 (*.f64 x y) (*.f64 (-.f64 x 1) z))

rewrite45.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
10×add-sqr-sqrt_binary64_4533
*-un-lft-identity_binary64_4511 associate-*l*_binary64_4452
add-log-exp_binary64_4550 pow1_binary64_4572 add-exp-log_binary64_4549 add-cbrt-cube_binary64_4547 add-cube-cbrt_binary64_4546
associate-*r*_binary64_4451
associate-*l/_binary64_4454 difference-of-squares_binary64_4480
sum-log_binary64_4602 flip3-+_binary64_4514 flip-+_binary64_4485 +-commutative_binary64_4441 pow-prod-down_binary64_4582 prod-exp_binary64_4560 cbrt-unprod_binary64_4544 unswap-sqr_binary64_4479 flip3--_binary64_4515 flip--_binary64_4486 difference-of-sqr-1_binary64_4481 distribute-lft-out--_binary64_4463 *-commutative_binary64_4442
Counts
2 → 35
Calls

2 calls:

6.0ms
(*.f64 (-.f64 x 1) z)
4.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x 1) z))
Compiler

Compiled 586 to 323 computations (44.9% saved)

series311.0ms (9.2%)

Error
0b
Counts
2 → 27
Calls

2 calls:

209.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 x 1) z))
88.0ms
(*.f64 (-.f64 x 1) z)
Compiler

Compiled 525 to 317 computations (39.6% saved)

simplify192.0ms (5.7%)

Algorithm
egg-herbie
Rules
414×associate-+l+_binary64_4444
386×associate-+r+_binary64_4443
328×associate-*l*_binary64_4452
239×distribute-rgt-neg-out_binary64_4471
231×associate-*r*_binary64_4451
201×distribute-rgt-in_binary64_4461
196×distribute-lft-neg-out_binary64_4470
181×distribute-lft-in_binary64_4460
136×distribute-rgt-out_binary64_4464
127×cancel-sign-sub-inv_binary64_4477
117×unswap-sqr_binary64_4479
110×+-commutative_binary64_4441
98×associate--r+_binary64_4447
97×distribute-rgt-neg-in_binary64_4469
84×distribute-neg-in_binary64_4472
82×*-commutative_binary64_4442
81×unsub-neg_binary64_4505
78×sub-neg_binary64_4504
73×sqr-pow_binary64_4483
72×associate--l+_binary64_4448
69×distribute-lft-neg-in_binary64_4468
68×associate-+r-_binary64_4445
52×associate-+l-_binary64_4446
47×pow-sqr_binary64_4484
45×distribute-lft-out_binary64_4462
42×exp-prod_binary64_4563
41×neg-sub0_binary64_4506
30×neg-mul-1_binary64_4507
29×*-rgt-identity_binary64_4501
25×*-lft-identity_binary64_4500 distribute-rgt-out--_binary64_4465
23×exp-sum_binary64_4557
22×cube-prod_binary64_4539
21×log-prod_binary64_4597
19×associate--r-_binary64_4450
18×associate-/l*_binary64_4456
15×exp-diff_binary64_4559
14×log-pow_binary64_4600 pow-plus_binary64_4574 mul-1-neg_binary64_4503
13×+-rgt-identity_binary64_4496
12×difference-of-squares_binary64_4480
10×swap-sqr_binary64_4478
associate--l-_binary64_4449
sub0-neg_binary64_4498
unpow3_binary64_4577
pow-base-1_binary64_4571 associate-/l/_binary64_4458 associate-*r/_binary64_4453
prod-exp_binary64_4560 cube-unmult_binary64_4548 cube-mult_binary64_4541 div-sub_binary64_4516
remove-double-neg_binary64_4499 distribute-frac-neg_binary64_4474 distribute-lft-out--_binary64_4463
cube-neg_binary64_4538 sqr-neg_binary64_4525 difference-of-sqr-1_binary64_4481 distribute-neg-out_binary64_4473
rem-sqrt-square_binary64_4524 associate-*l/_binary64_4454
exp-neg_binary64_4558 1-exp_binary64_4555 exp-1-e_binary64_4554 rem-log-exp_binary64_4552 difference-of-sqr--1_binary64_4482 distribute-rgt1-in_binary64_4467 count-2_binary64_4459
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-rec_binary64_4599 log-div_binary64_4598 pow-base-0_binary64_4595 unpow1/3_binary64_4578 unpow2_binary64_4576 unpow1/2_binary64_4575 exp-to-pow_binary64_4573 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 div-exp_binary64_4562 rec-exp_binary64_4561 e-exp-1_binary64_4556 exp-0_binary64_4553 rem-exp-log_binary64_4551 cube-div_binary64_4540 rem-3cbrt-rft_binary64_4537 rem-3cbrt-lft_binary64_4536 rem-cbrt-cube_binary64_4535 rem-cube-cbrt_binary64_4534 sqr-abs_binary64_4526 rem-square-sqrt_binary64_4523 times-frac_binary64_4517 /-rgt-identity_binary64_4502 --rgt-identity_binary64_4497 +-lft-identity_binary64_4495 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 cancel-sign-sub_binary64_4476 distribute-neg-frac_binary64_4475 distribute-lft1-in_binary64_4466 associate-/r/_binary64_4457 associate-/r*_binary64_4455
Counts
62 → 169
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079683
1209656
2639626
31783617

prune153.0ms (4.5%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1690169
Fresh000
Picked011
Done011
Total1692171
Error
0b
Counts
171 → 2
Compiler

Compiled 3206 to 1292 computations (59.7% saved)

regimes90.0ms (2.7%)

Accuracy

Total 0.0b remaining (63.7%)

Threshold costs 0.0b (63.7%)

Compiler

Compiled 332 to 358 computations (-7.8% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_4441
sub-neg_binary64_4504 *-commutative_binary64_4442
neg-mul-1_binary64_4507 neg-sub0_binary64_4506
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
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11110
21610
31810
41910
Proof
(- f64 (* f64 h0 (+ f64 h1 h2)) h2)

end0.0ms (0%)

sample685.0ms (20.3%)

Algorithm
intervals
Results
231.0ms8000×body128valid
17.0ms667×body128invalid
Compiler

Compiled 94 to 99 computations (-5.3% saved)

Profiling

Loading profile data...