Details

Time bar (total: 9.1s)

analyze659.0ms (7.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
9.4%90.4%0.2%10
23.4%74.9%1.8%11
27.3%69%3.7%12
36.6%56.5%6.8%13
40.5%52%7.4%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample23.0ms (0.3%)

Algorithm
intervals
Results
8.0ms256×body128valid
2.0ms60×body128invalid
Compiler

Compiled 19 to 21 computations (-10.5% saved)

simplify591.0ms (6.5%)

Algorithm
egg-herbie
Rules
807×exp-prod_binary64_9678
572×swap-sqr_binary64_9593
527×cube-prod_binary64_9654
315×unsub-neg_binary64_9620
208×exp-sum_binary64_9672
202×distribute-rgt-in_binary64_9576
191×sqr-pow_binary64_9598
163×neg-mul-1_binary64_9622
158×distribute-lft-neg-in_binary64_9583
149×neg-sub0_binary64_9621
147×distribute-rgt-neg-in_binary64_9584
131×distribute-rgt1-in_binary64_9582
98×*-commutative_binary64_9557
94×exp-diff_binary64_9674
91×distribute-lft-in_binary64_9575
87×sub-neg_binary64_9619
78×pow-plus_binary64_9689
68×pow-sqr_binary64_9599
58×distribute-neg-in_binary64_9587
52×associate-*r*_binary64_9566
50×associate-+l-_binary64_9561
48×sqr-neg_binary64_9640
45×+-commutative_binary64_9556
44×cancel-sign-sub-inv_binary64_9592
43×distribute-rgt-neg-out_binary64_9586 distribute-lft-neg-out_binary64_9585
42×remove-double-neg_binary64_9614
40×associate-*l*_binary64_9567
29×associate-+l+_binary64_9559
28×sub0-neg_binary64_9613
23×distribute-rgt-out_binary64_9579
22×associate--r+_binary64_9562
19×distribute-neg-out_binary64_9588
18×mul0-rgt_binary64_9609 mul0-lft_binary64_9608
16×exp-neg_binary64_9673
15×exp-lft-sqr_binary64_9681
11×associate-+r-_binary64_9560
associate-+r+_binary64_9558
+-rgt-identity_binary64_9611 associate--l-_binary64_9564
associate--r-_binary64_9565
+-lft-identity_binary64_9610 unswap-sqr_binary64_9594 distribute-rgt-out--_binary64_9580
--rgt-identity_binary64_9612 count-2_binary64_9574
cube-unmult_binary64_9663 *-rgt-identity_binary64_9616 *-lft-identity_binary64_9615
distribute-lft1-in_binary64_9581
cube-neg_binary64_9653 difference-of-sqr--1_binary64_9597 distribute-lft-out_binary64_9577 associate--l+_binary64_9563
1-exp_binary64_9670 exp-1-e_binary64_9669 div-sub_binary64_9631 difference-of-sqr-1_binary64_9596 cancel-sign-sub_binary64_9591
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_9889 erf-erfc_binary64_9888 erf-odd_binary64_9887 if-if-and-not_binary64_9886 if-if-and_binary64_9885 if-if-or-not_binary64_9884 if-if-or_binary64_9883 if-not_binary64_9882 if-same_binary64_9881 if-false_binary64_9880 if-true_binary64_9879 not-gte_binary64_9878 not-lte_binary64_9877 not-gt_binary64_9876 not-lt_binary64_9875 gte-same_binary64_9874 lte-same_binary64_9873 gt-same_binary64_9872 lt-same_binary64_9871 sinh---cosh_binary64_9818 sinh-+-cosh_binary64_9817 sinh-cosh_binary64_9816 tanh-def-c_binary64_9815 tanh-def-b_binary64_9814 tanh-def-a_binary64_9813 cosh-def_binary64_9812 sinh-def_binary64_9811 tan-neg_binary64_9758 cos-neg_binary64_9757 sin-neg_binary64_9756 tan-0_binary64_9755 cos-0_binary64_9754 sin-0_binary64_9753 hang-m-tan_binary64_9752 hang-p-tan_binary64_9751 hang-m0-tan_binary64_9750 hang-p0-tan_binary64_9749 hang-0m-tan_binary64_9748 hang-0p-tan_binary64_9747 tan-+PI/2_binary64_9746 tan-+PI_binary64_9745 tan-PI_binary64_9744 tan-PI/3_binary64_9743 tan-PI/4_binary64_9742 tan-PI/6_binary64_9741 cos-+PI/2_binary64_9740 cos-+PI_binary64_9739 cos-PI_binary64_9738 cos-PI/2_binary64_9737 cos-PI/3_binary64_9736 cos-PI/4_binary64_9735 cos-PI/6_binary64_9734 sin-+PI/2_binary64_9733 sin-+PI_binary64_9732 sin-PI_binary64_9731 sin-PI/2_binary64_9730 sin-PI/3_binary64_9729 sin-PI/4_binary64_9728 sin-PI/6_binary64_9727 sub-1-sin_binary64_9726 sub-1-cos_binary64_9725 -1-add-sin_binary64_9724 -1-add-cos_binary64_9723 1-sub-sin_binary64_9722 1-sub-cos_binary64_9721 cos-sin-sum_binary64_9720 log-E_binary64_9716 log-pow_binary64_9715 log-rec_binary64_9714 log-div_binary64_9713 log-prod_binary64_9712 pow-base-0_binary64_9710 unpow1/3_binary64_9693 unpow3_binary64_9692 unpow2_binary64_9691 unpow1/2_binary64_9690 exp-to-pow_binary64_9688 pow-base-1_binary64_9686 unpow0_binary64_9685 unpow1_binary64_9684 unpow-1_binary64_9683 exp-lft-cube_binary64_9682 exp-cbrt_binary64_9680 exp-sqrt_binary64_9679 div-exp_binary64_9677 rec-exp_binary64_9676 prod-exp_binary64_9675 e-exp-1_binary64_9671 exp-0_binary64_9668 rem-log-exp_binary64_9667 rem-exp-log_binary64_9666 cube-mult_binary64_9656 cube-div_binary64_9655 rem-3cbrt-rft_binary64_9652 rem-3cbrt-lft_binary64_9651 rem-cbrt-cube_binary64_9650 rem-cube-cbrt_binary64_9649 sqr-abs_binary64_9641 rem-sqrt-square_binary64_9639 rem-square-sqrt_binary64_9638 times-frac_binary64_9632 mul-1-neg_binary64_9618 /-rgt-identity_binary64_9617 div0_binary64_9607 *-inverses_binary64_9606 +-inverses_binary64_9605 lft-mult-inverse_binary64_9604 rgt-mult-inverse_binary64_9603 remove-double-div_binary64_9602 difference-of-squares_binary64_9595 distribute-neg-frac_binary64_9590 distribute-frac-neg_binary64_9589 distribute-lft-out--_binary64_9578 associate-/l/_binary64_9573 associate-/r/_binary64_9572 associate-/l*_binary64_9571 associate-/r*_binary64_9570 associate-*l/_binary64_9569 associate-*r/_binary64_9568
Counts
1 → 4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0910
11910
24110
38910
414610
519610
639810
775510
8218010

prune14.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New134
Fresh101
Picked000
Done000
Total235
Error
0.1b
Counts
5 → 3
Compiler

Compiled 49 to 34 computations (30.6% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

6.6b
(*.f64 (*.f64 t y) (-.f64 x z))

rewrite39.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
pow1_binary64_9687 add-exp-log_binary64_9664 add-cbrt-cube_binary64_9662 add-sqr-sqrt_binary64_9648 *-un-lft-identity_binary64_9626 cancel-sign-sub-inv_binary64_9592
associate-*r*_binary64_9566
add-cube-cbrt_binary64_9661 distribute-rgt-in_binary64_9576 distribute-lft-in_binary64_9575
pow-prod-down_binary64_9697 prod-exp_binary64_9675 cbrt-unprod_binary64_9659
sub-neg_binary64_9619 associate-*r/_binary64_9568
add-log-exp_binary64_9665 flip3--_binary64_9630 flip--_binary64_9601 associate-*l*_binary64_9567 difference-of-squares_binary64_9595 distribute-lft-out--_binary64_9578 *-commutative_binary64_9557
Counts
1 → 30
Calls

1 calls:

10.0ms
(*.f64 (*.f64 t y) (-.f64 x z))
Compiler

Compiled 428 to 118 computations (72.4% saved)

series295.0ms (3.2%)

Error
0.1b
Counts
1 → 18
Calls

1 calls:

284.0ms
(*.f64 (*.f64 t y) (-.f64 x z))
Compiler

Compiled 408 to 262 computations (35.8% saved)

simplify177.0ms (1.9%)

Algorithm
egg-herbie
Rules
418×distribute-rgt-neg-out_binary64_9586
416×distribute-lft-neg-out_binary64_9585
333×exp-prod_binary64_9678
287×distribute-rgt-in_binary64_9576
284×distribute-lft-in_binary64_9575
263×*-commutative_binary64_9557
258×unsub-neg_binary64_9620
181×associate-*l*_binary64_9567
150×+-commutative_binary64_9556
140×associate-*r*_binary64_9566
102×sqr-pow_binary64_9598
82×neg-sub0_binary64_9621 associate-+r+_binary64_9558
78×neg-mul-1_binary64_9622
71×exp-sum_binary64_9672
68×associate-+l+_binary64_9559
66×swap-sqr_binary64_9593
60×distribute-rgt-neg-in_binary64_9584
54×distribute-lft-neg-in_binary64_9583
46×cancel-sign-sub-inv_binary64_9592
43×sub-neg_binary64_9619
40×*-lft-identity_binary64_9615
39×unswap-sqr_binary64_9594
38×*-rgt-identity_binary64_9616
29×cube-prod_binary64_9654
28×log-prod_binary64_9712 pow-sqr_binary64_9599 associate-/l*_binary64_9571
26×exp-diff_binary64_9674
20×exp-to-pow_binary64_9688 exp-neg_binary64_9673
19×mul0-rgt_binary64_9609 mul0-lft_binary64_9608
16×difference-of-squares_binary64_9595
14×associate-+l-_binary64_9561
13×associate-+r-_binary64_9560
11×sqr-neg_binary64_9640
10×div-sub_binary64_9631
distribute-rgt-out--_binary64_9580
unpow3_binary64_9692 cube-unmult_binary64_9663 distribute-rgt-out_binary64_9579
sub0-neg_binary64_9613 +-rgt-identity_binary64_9611 associate-*r/_binary64_9568
associate-/l/_binary64_9573
cube-mult_binary64_9656 associate-*l/_binary64_9569
distribute-lft-out--_binary64_9578 distribute-lft-out_binary64_9577 associate--r+_binary64_9562
log-pow_binary64_9715 pow-plus_binary64_9689 pow-base-1_binary64_9686 prod-exp_binary64_9675 1-exp_binary64_9670 exp-1-e_binary64_9669 rem-log-exp_binary64_9667 rem-3cbrt-lft_binary64_9651 rem-sqrt-square_binary64_9639 rem-square-sqrt_binary64_9638 mul-1-neg_binary64_9618 count-2_binary64_9574
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_9889 erf-erfc_binary64_9888 erf-odd_binary64_9887 if-if-and-not_binary64_9886 if-if-and_binary64_9885 if-if-or-not_binary64_9884 if-if-or_binary64_9883 if-not_binary64_9882 if-same_binary64_9881 if-false_binary64_9880 if-true_binary64_9879 not-gte_binary64_9878 not-lte_binary64_9877 not-gt_binary64_9876 not-lt_binary64_9875 gte-same_binary64_9874 lte-same_binary64_9873 gt-same_binary64_9872 lt-same_binary64_9871 sinh---cosh_binary64_9818 sinh-+-cosh_binary64_9817 sinh-cosh_binary64_9816 tanh-def-c_binary64_9815 tanh-def-b_binary64_9814 tanh-def-a_binary64_9813 cosh-def_binary64_9812 sinh-def_binary64_9811 tan-neg_binary64_9758 cos-neg_binary64_9757 sin-neg_binary64_9756 tan-0_binary64_9755 cos-0_binary64_9754 sin-0_binary64_9753 hang-m-tan_binary64_9752 hang-p-tan_binary64_9751 hang-m0-tan_binary64_9750 hang-p0-tan_binary64_9749 hang-0m-tan_binary64_9748 hang-0p-tan_binary64_9747 tan-+PI/2_binary64_9746 tan-+PI_binary64_9745 tan-PI_binary64_9744 tan-PI/3_binary64_9743 tan-PI/4_binary64_9742 tan-PI/6_binary64_9741 cos-+PI/2_binary64_9740 cos-+PI_binary64_9739 cos-PI_binary64_9738 cos-PI/2_binary64_9737 cos-PI/3_binary64_9736 cos-PI/4_binary64_9735 cos-PI/6_binary64_9734 sin-+PI/2_binary64_9733 sin-+PI_binary64_9732 sin-PI_binary64_9731 sin-PI/2_binary64_9730 sin-PI/3_binary64_9729 sin-PI/4_binary64_9728 sin-PI/6_binary64_9727 sub-1-sin_binary64_9726 sub-1-cos_binary64_9725 -1-add-sin_binary64_9724 -1-add-cos_binary64_9723 1-sub-sin_binary64_9722 1-sub-cos_binary64_9721 cos-sin-sum_binary64_9720 log-E_binary64_9716 log-rec_binary64_9714 log-div_binary64_9713 pow-base-0_binary64_9710 unpow1/3_binary64_9693 unpow2_binary64_9691 unpow1/2_binary64_9690 unpow0_binary64_9685 unpow1_binary64_9684 unpow-1_binary64_9683 exp-lft-cube_binary64_9682 exp-lft-sqr_binary64_9681 exp-cbrt_binary64_9680 exp-sqrt_binary64_9679 div-exp_binary64_9677 rec-exp_binary64_9676 e-exp-1_binary64_9671 exp-0_binary64_9668 rem-exp-log_binary64_9666 cube-div_binary64_9655 cube-neg_binary64_9653 rem-3cbrt-rft_binary64_9652 rem-cbrt-cube_binary64_9650 rem-cube-cbrt_binary64_9649 sqr-abs_binary64_9641 times-frac_binary64_9632 /-rgt-identity_binary64_9617 remove-double-neg_binary64_9614 --rgt-identity_binary64_9612 +-lft-identity_binary64_9610 div0_binary64_9607 *-inverses_binary64_9606 +-inverses_binary64_9605 lft-mult-inverse_binary64_9604 rgt-mult-inverse_binary64_9603 remove-double-div_binary64_9602 difference-of-sqr--1_binary64_9597 difference-of-sqr-1_binary64_9596 cancel-sign-sub_binary64_9591 distribute-neg-frac_binary64_9590 distribute-frac-neg_binary64_9589 distribute-neg-out_binary64_9588 distribute-neg-in_binary64_9587 distribute-rgt1-in_binary64_9582 distribute-lft1-in_binary64_9581 associate-/r/_binary64_9572 associate-/r*_binary64_9570 associate--r-_binary64_9565 associate--l-_binary64_9564 associate--l+_binary64_9563
Counts
48 → 238
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
088621
1253558
2814558
32262558
44911558

prune159.0ms (1.7%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2335238
Fresh022
Picked011
Done000
Total2338241
Error
0.0b
Counts
241 → 8
Compiler

Compiled 3050 to 313 computations (89.7% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(cbrt.f64 (-.f64 x z))
0.5b
(cbrt.f64 (-.f64 x z))
1.6b
(*.f64 (*.f64 t (*.f64 y (*.f64 (cbrt.f64 (-.f64 x z)) (cbrt.f64 (-.f64 x z))))) (cbrt.f64 (-.f64 x z)))
4.2b
(*.f64 t (*.f64 y (*.f64 (cbrt.f64 (-.f64 x z)) (cbrt.f64 (-.f64 x z)))))

rewrite199.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
74×associate-*r/_binary64_9568
70×cbrt-div_binary64_9658
35×flip3--_binary64_9630 flip--_binary64_9601
32×frac-times_binary64_9636
27×pow1_binary64_9687 add-exp-log_binary64_9664
19×add-cbrt-cube_binary64_9662
16×pow-prod-down_binary64_9697 prod-exp_binary64_9675 cbrt-unprod_binary64_9659 associate-*l/_binary64_9569
15×add-sqr-sqrt_binary64_9648 *-un-lft-identity_binary64_9626 cbrt-prod_binary64_9657
add-cube-cbrt_binary64_9661 associate-*r*_binary64_9566
add-log-exp_binary64_9665 associate-*l*_binary64_9567
difference-of-squares_binary64_9595 distribute-lft-out--_binary64_9578
*-commutative_binary64_9557 pow1/3_binary64_9708
Counts
4 → 114
Calls

4 calls:

22.0ms
(*.f64 (*.f64 t (*.f64 y (*.f64 (cbrt.f64 (-.f64 x z)) (cbrt.f64 (-.f64 x z))))) (cbrt.f64 (-.f64 x z)))
16.0ms
(*.f64 t (*.f64 y (*.f64 (cbrt.f64 (-.f64 x z)) (cbrt.f64 (-.f64 x z)))))
4.0ms
(cbrt.f64 (-.f64 x z))
3.0ms
(cbrt.f64 (-.f64 x z))
Compiler

Compiled 3571 to 653 computations (81.7% saved)

series1.4s (15.6%)

Error
0.0b
Counts
4 → 56
Calls

4 calls:

735.0ms
(*.f64 t (*.f64 y (*.f64 (cbrt.f64 (-.f64 x z)) (cbrt.f64 (-.f64 x z)))))
344.0ms
(*.f64 (*.f64 t (*.f64 y (*.f64 (cbrt.f64 (-.f64 x z)) (cbrt.f64 (-.f64 x z))))) (cbrt.f64 (-.f64 x z)))
149.0ms
(cbrt.f64 (-.f64 x z))
145.0ms
(cbrt.f64 (-.f64 x z))
Compiler

Compiled 3121 to 2172 computations (30.4% saved)

simplify746.0ms (8.2%)

Algorithm
egg-herbie
Rules
509×associate-*l*_binary64_9567
421×associate-*r*_binary64_9566
306×exp-prod_binary64_9678
263×distribute-rgt-in_binary64_9576
262×distribute-lft-in_binary64_9575
172×*-commutative_binary64_9557
145×distribute-rgt-neg-in_binary64_9584
143×log-prod_binary64_9712
128×cancel-sign-sub-inv_binary64_9592
119×distribute-lft-neg-in_binary64_9583
96×sqr-pow_binary64_9598
51×associate-+l+_binary64_9559
40×sub-neg_binary64_9619 pow-sqr_binary64_9599
39×cube-prod_binary64_9654 neg-sub0_binary64_9621
38×exp-diff_binary64_9674 distribute-lft-neg-out_binary64_9585 associate-+r+_binary64_9558
36×swap-sqr_binary64_9593
34×neg-mul-1_binary64_9622 associate-*r/_binary64_9568 +-commutative_binary64_9556
31×associate-*l/_binary64_9569
23×unswap-sqr_binary64_9594 distribute-rgt-neg-out_binary64_9586
21×pow-plus_binary64_9689
20×distribute-rgt-out_binary64_9579
19×log-div_binary64_9713
18×log-pow_binary64_9715 exp-sum_binary64_9672
17×exp-sqrt_binary64_9679 *-rgt-identity_binary64_9616
16×unpow3_binary64_9692 associate-+l-_binary64_9561 associate-+r-_binary64_9560
14×*-lft-identity_binary64_9615
13×distribute-rgt-out--_binary64_9580
11×unpow1/3_binary64_9693
cube-unmult_binary64_9663 distribute-lft-out--_binary64_9578 associate-/l/_binary64_9573
associate--l+_binary64_9563
difference-of-squares_binary64_9595 associate-/r*_binary64_9570
distribute-lft-out_binary64_9577 associate-/l*_binary64_9571
rem-3cbrt-lft_binary64_9651 mul-1-neg_binary64_9618
unpow2_binary64_9691 unpow1_binary64_9684 unsub-neg_binary64_9620 remove-double-neg_binary64_9614 associate--r-_binary64_9565
cube-mult_binary64_9656 distribute-neg-out_binary64_9588 distribute-neg-in_binary64_9587 associate--l-_binary64_9564 associate--r+_binary64_9562
exp-to-pow_binary64_9688 count-2_binary64_9574
log-rec_binary64_9714 prod-exp_binary64_9675 1-exp_binary64_9670 exp-1-e_binary64_9669 rem-log-exp_binary64_9667 rem-cbrt-cube_binary64_9650 rem-cube-cbrt_binary64_9649 div-sub_binary64_9631 --rgt-identity_binary64_9612 *-inverses_binary64_9606 cancel-sign-sub_binary64_9591 distribute-lft1-in_binary64_9581
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_9889 erf-erfc_binary64_9888 erf-odd_binary64_9887 if-if-and-not_binary64_9886 if-if-and_binary64_9885 if-if-or-not_binary64_9884 if-if-or_binary64_9883 if-not_binary64_9882 if-same_binary64_9881 if-false_binary64_9880 if-true_binary64_9879 not-gte_binary64_9878 not-lte_binary64_9877 not-gt_binary64_9876 not-lt_binary64_9875 gte-same_binary64_9874 lte-same_binary64_9873 gt-same_binary64_9872 lt-same_binary64_9871 sinh---cosh_binary64_9818 sinh-+-cosh_binary64_9817 sinh-cosh_binary64_9816 tanh-def-c_binary64_9815 tanh-def-b_binary64_9814 tanh-def-a_binary64_9813 cosh-def_binary64_9812 sinh-def_binary64_9811 tan-neg_binary64_9758 cos-neg_binary64_9757 sin-neg_binary64_9756 tan-0_binary64_9755 cos-0_binary64_9754 sin-0_binary64_9753 hang-m-tan_binary64_9752 hang-p-tan_binary64_9751 hang-m0-tan_binary64_9750 hang-p0-tan_binary64_9749 hang-0m-tan_binary64_9748 hang-0p-tan_binary64_9747 tan-+PI/2_binary64_9746 tan-+PI_binary64_9745 tan-PI_binary64_9744 tan-PI/3_binary64_9743 tan-PI/4_binary64_9742 tan-PI/6_binary64_9741 cos-+PI/2_binary64_9740 cos-+PI_binary64_9739 cos-PI_binary64_9738 cos-PI/2_binary64_9737 cos-PI/3_binary64_9736 cos-PI/4_binary64_9735 cos-PI/6_binary64_9734 sin-+PI/2_binary64_9733 sin-+PI_binary64_9732 sin-PI_binary64_9731 sin-PI/2_binary64_9730 sin-PI/3_binary64_9729 sin-PI/4_binary64_9728 sin-PI/6_binary64_9727 sub-1-sin_binary64_9726 sub-1-cos_binary64_9725 -1-add-sin_binary64_9724 -1-add-cos_binary64_9723 1-sub-sin_binary64_9722 1-sub-cos_binary64_9721 cos-sin-sum_binary64_9720 log-E_binary64_9716 pow-base-0_binary64_9710 unpow1/2_binary64_9690 pow-base-1_binary64_9686 unpow0_binary64_9685 unpow-1_binary64_9683 exp-lft-cube_binary64_9682 exp-lft-sqr_binary64_9681 exp-cbrt_binary64_9680 div-exp_binary64_9677 rec-exp_binary64_9676 exp-neg_binary64_9673 e-exp-1_binary64_9671 exp-0_binary64_9668 rem-exp-log_binary64_9666 cube-div_binary64_9655 cube-neg_binary64_9653 rem-3cbrt-rft_binary64_9652 sqr-abs_binary64_9641 sqr-neg_binary64_9640 rem-sqrt-square_binary64_9639 rem-square-sqrt_binary64_9638 times-frac_binary64_9632 /-rgt-identity_binary64_9617 sub0-neg_binary64_9613 +-rgt-identity_binary64_9611 +-lft-identity_binary64_9610 mul0-rgt_binary64_9609 mul0-lft_binary64_9608 div0_binary64_9607 +-inverses_binary64_9605 lft-mult-inverse_binary64_9604 rgt-mult-inverse_binary64_9603 remove-double-div_binary64_9602 difference-of-sqr--1_binary64_9597 difference-of-sqr-1_binary64_9596 distribute-neg-frac_binary64_9590 distribute-frac-neg_binary64_9589 distribute-rgt1-in_binary64_9582 associate-/r/_binary64_9572
Counts
170 → 442
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02484032
16123807
222073575
345123571

prune621.0ms (6.8%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New4411442
Fresh066
Picked011
Done011
Total4419450
Error
0.0b
Counts
450 → 9
Compiler

Compiled 13572 to 3547 computations (73.9% saved)

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(*.f64 t (-.f64 x z))
7.2b
(*.f64 y (*.f64 t (-.f64 x z)))

rewrite64.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
20×distribute-rgt-in_binary64_9576 distribute-lft-in_binary64_9575
18×cancel-sign-sub-inv_binary64_9592
15×add-sqr-sqrt_binary64_9648
13×*-un-lft-identity_binary64_9626
11×add-cube-cbrt_binary64_9661
pow1_binary64_9687 add-exp-log_binary64_9664 add-cbrt-cube_binary64_9662
sub-neg_binary64_9619 associate-*r/_binary64_9568 associate-*l*_binary64_9567 associate-*r*_binary64_9566
pow-prod-down_binary64_9697 prod-exp_binary64_9675 cbrt-unprod_binary64_9659
add-log-exp_binary64_9665 flip3--_binary64_9630 flip--_binary64_9601 *-commutative_binary64_9557
unswap-sqr_binary64_9594 difference-of-squares_binary64_9595 distribute-lft-out--_binary64_9578
Counts
2 → 66
Calls

2 calls:

8.0ms
(*.f64 y (*.f64 t (-.f64 x z)))
7.0ms
(*.f64 t (-.f64 x z))
Compiler

Compiled 918 to 248 computations (73% saved)

series441.0ms (4.8%)

Error
0.0b
Counts
2 → 33
Calls

2 calls:

293.0ms
(*.f64 y (*.f64 t (-.f64 x z)))
132.0ms
(*.f64 t (-.f64 x z))
Compiler

Compiled 705 to 455 computations (35.5% saved)

simplify268.0ms (2.9%)

Algorithm
egg-herbie
Rules
419×unsub-neg_binary64_9620
401×exp-prod_binary64_9678
400×distribute-rgt-in_binary64_9576
396×distribute-lft-in_binary64_9575
281×*-commutative_binary64_9557
202×+-commutative_binary64_9556
168×associate-*l*_binary64_9567 associate-*r*_binary64_9566
141×times-frac_binary64_9632
138×sqr-pow_binary64_9598
130×neg-sub0_binary64_9621
129×exp-sum_binary64_9672
125×neg-mul-1_binary64_9622
108×associate-+r+_binary64_9558
106×swap-sqr_binary64_9593
93×associate-+l+_binary64_9559
77×distribute-rgt-neg-in_binary64_9584
72×distribute-rgt-neg-out_binary64_9586
71×distribute-lft-neg-out_binary64_9585
68×distribute-lft-neg-in_binary64_9583
58×exp-diff_binary64_9674
52×sqr-neg_binary64_9640
51×cancel-sign-sub-inv_binary64_9592
43×sub-neg_binary64_9619
42×*-rgt-identity_binary64_9616 *-lft-identity_binary64_9615
38×exp-neg_binary64_9673
35×unswap-sqr_binary64_9594
34×cube-prod_binary64_9654
33×log-prod_binary64_9712 associate-/l*_binary64_9571
28×pow-sqr_binary64_9599
27×exp-to-pow_binary64_9688
26×mul0-rgt_binary64_9609 mul0-lft_binary64_9608
20×div-sub_binary64_9631
16×difference-of-squares_binary64_9595
14×associate-+l-_binary64_9561
13×associate-+r-_binary64_9560
11×associate-*r/_binary64_9568
10×distribute-rgt-out--_binary64_9580
cube-unmult_binary64_9663 associate-/l/_binary64_9573
unpow3_binary64_9692
sub0-neg_binary64_9613 +-rgt-identity_binary64_9611 distribute-rgt-out_binary64_9579
prod-exp_binary64_9675 associate-/r*_binary64_9570 associate-*l/_binary64_9569
div-exp_binary64_9677 cube-mult_binary64_9656 cube-neg_binary64_9653 associate-/r/_binary64_9572
mul-1-neg_binary64_9618
rem-sqrt-square_binary64_9639 distribute-lft-out--_binary64_9578 associate--r+_binary64_9562
log-pow_binary64_9715 pow-plus_binary64_9689 pow-base-1_binary64_9686 1-exp_binary64_9670 exp-1-e_binary64_9669 rem-log-exp_binary64_9667 rem-3cbrt-lft_binary64_9651 rem-square-sqrt_binary64_9638 /-rgt-identity_binary64_9617 count-2_binary64_9574
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_9889 erf-erfc_binary64_9888 erf-odd_binary64_9887 if-if-and-not_binary64_9886 if-if-and_binary64_9885 if-if-or-not_binary64_9884 if-if-or_binary64_9883 if-not_binary64_9882 if-same_binary64_9881 if-false_binary64_9880 if-true_binary64_9879 not-gte_binary64_9878 not-lte_binary64_9877 not-gt_binary64_9876 not-lt_binary64_9875 gte-same_binary64_9874 lte-same_binary64_9873 gt-same_binary64_9872 lt-same_binary64_9871 sinh---cosh_binary64_9818 sinh-+-cosh_binary64_9817 sinh-cosh_binary64_9816 tanh-def-c_binary64_9815 tanh-def-b_binary64_9814 tanh-def-a_binary64_9813 cosh-def_binary64_9812 sinh-def_binary64_9811 tan-neg_binary64_9758 cos-neg_binary64_9757 sin-neg_binary64_9756 tan-0_binary64_9755 cos-0_binary64_9754 sin-0_binary64_9753 hang-m-tan_binary64_9752 hang-p-tan_binary64_9751 hang-m0-tan_binary64_9750 hang-p0-tan_binary64_9749 hang-0m-tan_binary64_9748 hang-0p-tan_binary64_9747 tan-+PI/2_binary64_9746 tan-+PI_binary64_9745 tan-PI_binary64_9744 tan-PI/3_binary64_9743 tan-PI/4_binary64_9742 tan-PI/6_binary64_9741 cos-+PI/2_binary64_9740 cos-+PI_binary64_9739 cos-PI_binary64_9738 cos-PI/2_binary64_9737 cos-PI/3_binary64_9736 cos-PI/4_binary64_9735 cos-PI/6_binary64_9734 sin-+PI/2_binary64_9733 sin-+PI_binary64_9732 sin-PI_binary64_9731 sin-PI/2_binary64_9730 sin-PI/3_binary64_9729 sin-PI/4_binary64_9728 sin-PI/6_binary64_9727 sub-1-sin_binary64_9726 sub-1-cos_binary64_9725 -1-add-sin_binary64_9724 -1-add-cos_binary64_9723 1-sub-sin_binary64_9722 1-sub-cos_binary64_9721 cos-sin-sum_binary64_9720 log-E_binary64_9716 log-rec_binary64_9714 log-div_binary64_9713 pow-base-0_binary64_9710 unpow1/3_binary64_9693 unpow2_binary64_9691 unpow1/2_binary64_9690 unpow0_binary64_9685 unpow1_binary64_9684 unpow-1_binary64_9683 exp-lft-cube_binary64_9682 exp-lft-sqr_binary64_9681 exp-cbrt_binary64_9680 exp-sqrt_binary64_9679 rec-exp_binary64_9676 e-exp-1_binary64_9671 exp-0_binary64_9668 rem-exp-log_binary64_9666 cube-div_binary64_9655 rem-3cbrt-rft_binary64_9652 rem-cbrt-cube_binary64_9650 rem-cube-cbrt_binary64_9649 sqr-abs_binary64_9641 remove-double-neg_binary64_9614 --rgt-identity_binary64_9612 +-lft-identity_binary64_9610 div0_binary64_9607 *-inverses_binary64_9606 +-inverses_binary64_9605 lft-mult-inverse_binary64_9604 rgt-mult-inverse_binary64_9603 remove-double-div_binary64_9602 difference-of-sqr--1_binary64_9597 difference-of-sqr-1_binary64_9596 cancel-sign-sub_binary64_9591 distribute-neg-frac_binary64_9590 distribute-frac-neg_binary64_9589 distribute-neg-out_binary64_9588 distribute-neg-in_binary64_9587 distribute-rgt1-in_binary64_9582 distribute-lft1-in_binary64_9581 distribute-lft-out_binary64_9577 associate--r-_binary64_9565 associate--l-_binary64_9564 associate--l+_binary64_9563
Counts
99 → 189
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01231142
12861049
29101049
328851049
446511049

prune118.0ms (1.3%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New1890189
Fresh066
Picked011
Done022
Total1899198
Error
0.0b
Counts
198 → 9
Compiler

Compiled 2384 to 319 computations (86.6% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(*.f64 y (-.f64 x z))
7.6b
(*.f64 (*.f64 y (-.f64 x z)) t)

rewrite54.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
11×add-sqr-sqrt_binary64_9648
pow1_binary64_9687 add-exp-log_binary64_9664 add-cbrt-cube_binary64_9662 *-un-lft-identity_binary64_9626
associate-*r*_binary64_9566
add-cube-cbrt_binary64_9661
cancel-sign-sub-inv_binary64_9592
pow-prod-down_binary64_9697 prod-exp_binary64_9675 cbrt-unprod_binary64_9659 associate-*r/_binary64_9568 associate-*l*_binary64_9567 distribute-rgt-in_binary64_9576 distribute-lft-in_binary64_9575
add-log-exp_binary64_9665 flip3--_binary64_9630 associate-*l/_binary64_9569 flip--_binary64_9601 *-commutative_binary64_9557 sub-neg_binary64_9619
unswap-sqr_binary64_9594 difference-of-squares_binary64_9595 distribute-lft-out--_binary64_9578
Counts
2 → 50
Calls

2 calls:

8.0ms
(*.f64 (*.f64 y (-.f64 x z)) t)
7.0ms
(*.f64 y (-.f64 x z))
Compiler

Compiled 674 to 197 computations (70.8% saved)

series454.0ms (5%)

Error
0.0b
Counts
2 → 33
Calls

2 calls:

288.0ms
(*.f64 (*.f64 y (-.f64 x z)) t)
151.0ms
(*.f64 y (-.f64 x z))
Compiler

Compiled 705 to 454 computations (35.6% saved)

simplify196.0ms (2.2%)

Algorithm
egg-herbie
Rules
590×distribute-lft-neg-out_binary64_9585
588×distribute-rgt-neg-out_binary64_9586
358×distribute-lft-in_binary64_9575
355×distribute-rgt-in_binary64_9576
267×*-commutative_binary64_9557
245×unsub-neg_binary64_9620
193×exp-prod_binary64_9678
173×associate-*l*_binary64_9567
131×associate-*r*_binary64_9566
112×sqr-pow_binary64_9598
102×neg-sub0_binary64_9621
97×neg-mul-1_binary64_9622
81×swap-sqr_binary64_9593
72×exp-sum_binary64_9672
61×*-lft-identity_binary64_9615
58×cancel-sign-sub-inv_binary64_9592
55×*-rgt-identity_binary64_9616
43×unswap-sqr_binary64_9594
42×sub-neg_binary64_9619
35×cube-prod_binary64_9654
32×log-prod_binary64_9712
29×pow-sqr_binary64_9599
26×exp-diff_binary64_9674
20×distribute-rgt-neg-in_binary64_9584
18×exp-neg_binary64_9673 mul0-rgt_binary64_9609 mul0-lft_binary64_9608 +-commutative_binary64_9556
16×sqr-neg_binary64_9640 difference-of-squares_binary64_9595
14×div-sub_binary64_9631
13×distribute-lft-neg-in_binary64_9583 associate-+r+_binary64_9558
10×associate-+r-_binary64_9560 associate-+l+_binary64_9559
unpow3_binary64_9692 cube-unmult_binary64_9663
sub0-neg_binary64_9613 +-rgt-identity_binary64_9611 associate-+l-_binary64_9561
cube-mult_binary64_9656
mul-1-neg_binary64_9618 distribute-lft-out--_binary64_9578 associate-/l*_binary64_9571
prod-exp_binary64_9675 1-exp_binary64_9670 exp-1-e_binary64_9669 rem-log-exp_binary64_9667 rem-3cbrt-lft_binary64_9651 rem-sqrt-square_binary64_9639 rem-square-sqrt_binary64_9638 /-rgt-identity_binary64_9617 distribute-rgt-out--_binary64_9580 associate-/l/_binary64_9573 associate-*r/_binary64_9568
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_9889 erf-erfc_binary64_9888 erf-odd_binary64_9887 if-if-and-not_binary64_9886 if-if-and_binary64_9885 if-if-or-not_binary64_9884 if-if-or_binary64_9883 if-not_binary64_9882 if-same_binary64_9881 if-false_binary64_9880 if-true_binary64_9879 not-gte_binary64_9878 not-lte_binary64_9877 not-gt_binary64_9876 not-lt_binary64_9875 gte-same_binary64_9874 lte-same_binary64_9873 gt-same_binary64_9872 lt-same_binary64_9871 sinh---cosh_binary64_9818 sinh-+-cosh_binary64_9817 sinh-cosh_binary64_9816 tanh-def-c_binary64_9815 tanh-def-b_binary64_9814 tanh-def-a_binary64_9813 cosh-def_binary64_9812 sinh-def_binary64_9811 tan-neg_binary64_9758 cos-neg_binary64_9757 sin-neg_binary64_9756 tan-0_binary64_9755 cos-0_binary64_9754 sin-0_binary64_9753 hang-m-tan_binary64_9752 hang-p-tan_binary64_9751 hang-m0-tan_binary64_9750 hang-p0-tan_binary64_9749 hang-0m-tan_binary64_9748 hang-0p-tan_binary64_9747 tan-+PI/2_binary64_9746 tan-+PI_binary64_9745 tan-PI_binary64_9744 tan-PI/3_binary64_9743 tan-PI/4_binary64_9742 tan-PI/6_binary64_9741 cos-+PI/2_binary64_9740 cos-+PI_binary64_9739 cos-PI_binary64_9738 cos-PI/2_binary64_9737 cos-PI/3_binary64_9736 cos-PI/4_binary64_9735 cos-PI/6_binary64_9734 sin-+PI/2_binary64_9733 sin-+PI_binary64_9732 sin-PI_binary64_9731 sin-PI/2_binary64_9730 sin-PI/3_binary64_9729 sin-PI/4_binary64_9728 sin-PI/6_binary64_9727 sub-1-sin_binary64_9726 sub-1-cos_binary64_9725 -1-add-sin_binary64_9724 -1-add-cos_binary64_9723 1-sub-sin_binary64_9722 1-sub-cos_binary64_9721 cos-sin-sum_binary64_9720 log-E_binary64_9716 log-pow_binary64_9715 log-rec_binary64_9714 log-div_binary64_9713 pow-base-0_binary64_9710 unpow1/3_binary64_9693 unpow2_binary64_9691 unpow1/2_binary64_9690 pow-plus_binary64_9689 exp-to-pow_binary64_9688 pow-base-1_binary64_9686 unpow0_binary64_9685 unpow1_binary64_9684 unpow-1_binary64_9683 exp-lft-cube_binary64_9682 exp-lft-sqr_binary64_9681 exp-cbrt_binary64_9680 exp-sqrt_binary64_9679 div-exp_binary64_9677 rec-exp_binary64_9676 e-exp-1_binary64_9671 exp-0_binary64_9668 rem-exp-log_binary64_9666 cube-div_binary64_9655 cube-neg_binary64_9653 rem-3cbrt-rft_binary64_9652 rem-cbrt-cube_binary64_9650 rem-cube-cbrt_binary64_9649 sqr-abs_binary64_9641 times-frac_binary64_9632 remove-double-neg_binary64_9614 --rgt-identity_binary64_9612 +-lft-identity_binary64_9610 div0_binary64_9607 *-inverses_binary64_9606 +-inverses_binary64_9605 lft-mult-inverse_binary64_9604 rgt-mult-inverse_binary64_9603 remove-double-div_binary64_9602 difference-of-sqr--1_binary64_9597 difference-of-sqr-1_binary64_9596 cancel-sign-sub_binary64_9591 distribute-neg-frac_binary64_9590 distribute-frac-neg_binary64_9589 distribute-neg-out_binary64_9588 distribute-neg-in_binary64_9587 distribute-rgt1-in_binary64_9582 distribute-lft1-in_binary64_9581 distribute-rgt-out_binary64_9579 distribute-lft-out_binary64_9577 count-2_binary64_9574 associate-/r/_binary64_9572 associate-/r*_binary64_9570 associate-*l/_binary64_9569 associate--r-_binary64_9565 associate--l-_binary64_9564 associate--l+_binary64_9563 associate--r+_binary64_9562
Counts
83 → 132
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0105891
1254798
2851798
32601798

prune77.0ms (0.8%)

Pruning

10 alts after pruning (6 fresh and 4 done)

PrunedKeptTotal
New1311132
Fresh055
Picked011
Done033
Total13110141
Error
0b
Counts
141 → 10
Compiler

Compiled 1428 to 184 computations (87.1% saved)

regimes995.0ms (10.9%)

Accuracy

Total 0.5b remaining (98.4%)

Threshold costs 0.5b (98.4%)

Compiler

Compiled 4912 to 3320 computations (32.4% saved)

bsearch2.0ms (0%)

Compiler

Compiled 7 to 7 computations (0% saved)

simplify14.0ms (0.2%)

Algorithm
egg-herbie
Rules
12×*-commutative_binary64_9557
sub-neg_binary64_9619 +-commutative_binary64_9556
neg-mul-1_binary64_9622 neg-sub0_binary64_9621
cancel-sign-sub-inv_binary64_9592 distribute-rgt-neg-in_binary64_9584
distribute-lft-neg-out_binary64_9585 distribute-lft-neg-in_binary64_9583
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_9886 if-if-and_binary64_9885 if-if-or-not_binary64_9884 if-if-or_binary64_9883 if-not_binary64_9882 if-same_binary64_9881 if-false_binary64_9880 if-true_binary64_9879 tan-0_binary64_9755 cos-0_binary64_9754 sin-0_binary64_9753 unpow1_binary64_9684 e-exp-1_binary64_9671 1-exp_binary64_9670 exp-1-e_binary64_9669 exp-0_binary64_9668 sqr-abs_binary64_9641 sqr-neg_binary64_9640 unsub-neg_binary64_9620 mul-1-neg_binary64_9618 /-rgt-identity_binary64_9617 *-rgt-identity_binary64_9616 *-lft-identity_binary64_9615 remove-double-neg_binary64_9614 sub0-neg_binary64_9613 --rgt-identity_binary64_9612 +-rgt-identity_binary64_9611 +-lft-identity_binary64_9610 cancel-sign-sub_binary64_9591 distribute-neg-frac_binary64_9590 distribute-frac-neg_binary64_9589 distribute-neg-out_binary64_9588 distribute-neg-in_binary64_9587 distribute-rgt-neg-out_binary64_9586
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
029113
144113
255113
361113
465113
566113
Proof
(if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h3 h1) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (=> (* f64 (* f64 h1 (- f64 h0 h2)) h3)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) h3) (* f64 (* f64 h3 h1) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h3 h1) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) h3) (* f64 (=> (* f64 h3 h1)) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (=> (* f64 h3 h1)) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h1 h3) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (=> (* f64 h2 h1))) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h1 h3) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (=> (* f64 h2 h1))) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h1 h3) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (=> (* f64 h2 h1))) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h2 h1)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h1 h3) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (=> (* f64 h2 h1))) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (=> (* f64 h2 h1))) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h1 h3) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2)))))) *-commutative_binary64_9557 => (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) -7061304053484175540740315884916942189215912916565799227264745753609456084889480331151311379813074602643272538057296963751345377269055022016024449513723025948672) (* f64 (* f64 h1 h3) (- f64 h0 h2)) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) -3533160334359257/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (* f64 h3 (* f64 h1 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1694410203817877/60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992) (* f64 h1 (* f64 h3 (- f64 h0 h2))) (if real (<= f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) 1600834896909423898880109274964775763087156808192480087860310382882600526448156181203045803820905899789542226001389262297384945016419063132143311704766794394640935790465049222358126210197208182349091066492785651424994685588399517640938975204032468728079370485389624157310289524791247375844769792) (* f64 (- f64 (* f64 h0 h1) (* f64 h1 h2)) h3) (* f64 (* f64 h1 h3) (- f64 h0 h2))))))

end0.0ms (0%)

sample1.5s (16%)

Algorithm
intervals
Results
255.0ms8000×body128valid
55.0ms1926×body128invalid
Compiler

Compiled 928 to 600 computations (35.3% saved)

Profiling

Loading profile data...