Details

Time bar (total: 4.2s)

analyze477.0ms (11.4%)

Algorithm
search
egg-herbie
Rules
172×cancel-sign-sub-inv_binary64_3795
131×distribute-rgt-in_binary64_3779
122×sub-neg_binary64_3822
111×unsub-neg_binary64_3823
97×associate--r+_binary64_3765
64×distribute-lft-in_binary64_3778
57×associate-+l-_binary64_3764
56×neg-mul-1_binary64_3825 distribute-rgt-neg-in_binary64_3787
49×associate-+r+_binary64_3761
48×+-commutative_binary64_3759
39×distribute-lft-neg-out_binary64_3788 *-commutative_binary64_3760
36×sub0-neg_binary64_3816 +-lft-identity_binary64_3813
35×neg-sub0_binary64_3824 associate-*r*_binary64_3769 associate-+l+_binary64_3762
31×distribute-neg-in_binary64_3790
29×associate--l+_binary64_3766
23×distribute-rgt-neg-out_binary64_3789 distribute-rgt-out_binary64_3782
21×associate-+r-_binary64_3763
19×distribute-rgt-out--_binary64_3783 associate-*l*_binary64_3770
18×mul0-rgt_binary64_3812
16×mul0-lft_binary64_3811
14×associate--r-_binary64_3768
12×distribute-lft-neg-in_binary64_3786
10×remove-double-neg_binary64_3817
*-rgt-identity_binary64_3819 *-lft-identity_binary64_3818 associate--l-_binary64_3767
--rgt-identity_binary64_3815 +-rgt-identity_binary64_3814
distribute-lft-out--_binary64_3781
distribute-neg-out_binary64_3791
1-exp_binary64_3873
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_4092 erf-erfc_binary64_4091 erf-odd_binary64_4090 if-if-and-not_binary64_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 not-gte_binary64_4081 not-lte_binary64_4080 not-gt_binary64_4079 not-lt_binary64_4078 gte-same_binary64_4077 lte-same_binary64_4076 gt-same_binary64_4075 lt-same_binary64_4074 sinh---cosh_binary64_4021 sinh-+-cosh_binary64_4020 sinh-cosh_binary64_4019 tanh-def-c_binary64_4018 tanh-def-b_binary64_4017 tanh-def-a_binary64_4016 cosh-def_binary64_4015 sinh-def_binary64_4014 tan-neg_binary64_3961 cos-neg_binary64_3960 sin-neg_binary64_3959 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 hang-m-tan_binary64_3955 hang-p-tan_binary64_3954 hang-m0-tan_binary64_3953 hang-p0-tan_binary64_3952 hang-0m-tan_binary64_3951 hang-0p-tan_binary64_3950 tan-+PI/2_binary64_3949 tan-+PI_binary64_3948 tan-PI_binary64_3947 tan-PI/3_binary64_3946 tan-PI/4_binary64_3945 tan-PI/6_binary64_3944 cos-+PI/2_binary64_3943 cos-+PI_binary64_3942 cos-PI_binary64_3941 cos-PI/2_binary64_3940 cos-PI/3_binary64_3939 cos-PI/4_binary64_3938 cos-PI/6_binary64_3937 sin-+PI/2_binary64_3936 sin-+PI_binary64_3935 sin-PI_binary64_3934 sin-PI/2_binary64_3933 sin-PI/3_binary64_3932 sin-PI/4_binary64_3931 sin-PI/6_binary64_3930 sub-1-sin_binary64_3929 sub-1-cos_binary64_3928 -1-add-sin_binary64_3927 -1-add-cos_binary64_3926 1-sub-sin_binary64_3925 1-sub-cos_binary64_3924 cos-sin-sum_binary64_3923 log-E_binary64_3919 log-pow_binary64_3918 log-rec_binary64_3917 log-div_binary64_3916 log-prod_binary64_3915 pow-base-0_binary64_3913 unpow1/3_binary64_3896 unpow3_binary64_3895 unpow2_binary64_3894 unpow1/2_binary64_3893 pow-plus_binary64_3892 exp-to-pow_binary64_3891 pow-base-1_binary64_3889 unpow0_binary64_3888 unpow1_binary64_3887 unpow-1_binary64_3886 exp-lft-cube_binary64_3885 exp-lft-sqr_binary64_3884 exp-cbrt_binary64_3883 exp-sqrt_binary64_3882 exp-prod_binary64_3881 div-exp_binary64_3880 rec-exp_binary64_3879 prod-exp_binary64_3878 exp-diff_binary64_3877 exp-neg_binary64_3876 exp-sum_binary64_3875 e-exp-1_binary64_3874 exp-1-e_binary64_3872 exp-0_binary64_3871 rem-log-exp_binary64_3870 rem-exp-log_binary64_3869 cube-unmult_binary64_3866 cube-mult_binary64_3859 cube-div_binary64_3858 cube-prod_binary64_3857 cube-neg_binary64_3856 rem-3cbrt-rft_binary64_3855 rem-3cbrt-lft_binary64_3854 rem-cbrt-cube_binary64_3853 rem-cube-cbrt_binary64_3852 sqr-abs_binary64_3844 sqr-neg_binary64_3843 rem-sqrt-square_binary64_3842 rem-square-sqrt_binary64_3841 times-frac_binary64_3835 div-sub_binary64_3834 mul-1-neg_binary64_3821 /-rgt-identity_binary64_3820 div0_binary64_3810 *-inverses_binary64_3809 +-inverses_binary64_3808 lft-mult-inverse_binary64_3807 rgt-mult-inverse_binary64_3806 remove-double-div_binary64_3805 pow-sqr_binary64_3802 sqr-pow_binary64_3801 difference-of-sqr--1_binary64_3800 difference-of-sqr-1_binary64_3799 difference-of-squares_binary64_3798 unswap-sqr_binary64_3797 swap-sqr_binary64_3796 cancel-sign-sub_binary64_3794 distribute-neg-frac_binary64_3793 distribute-frac-neg_binary64_3792 distribute-rgt1-in_binary64_3785 distribute-lft1-in_binary64_3784 distribute-lft-out_binary64_3780 count-2_binary64_3777 associate-/l/_binary64_3776 associate-/r/_binary64_3775 associate-/l*_binary64_3774 associate-/r*_binary64_3773 associate-*l/_binary64_3772 associate-*r/_binary64_3771
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02052
13852
27052
310648
421648
537340
649540
794040
886040
983940
1083840
1183840
1277940
033
133
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)

sample18.0ms (0.4%)

Algorithm
intervals
Results
7.0ms256×body128valid
1.0ms27×body128invalid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify22.0ms (0.5%)

Algorithm
egg-herbie
Rules
52×cancel-sign-sub-inv_binary64_3795
45×sub-neg_binary64_3822 distribute-rgt-in_binary64_3779
43×associate--r+_binary64_3765
28×unsub-neg_binary64_3823
23×neg-mul-1_binary64_3825 distribute-rgt-neg-in_binary64_3787
22×distribute-lft-in_binary64_3778
19×associate-*l*_binary64_3770
18×neg-sub0_binary64_3824 associate-*r*_binary64_3769 +-commutative_binary64_3759
17×*-commutative_binary64_3760
15×distribute-neg-in_binary64_3790 distribute-lft-neg-out_binary64_3788 associate-+l-_binary64_3764
14×associate-+r+_binary64_3761
12×sub0-neg_binary64_3816
11×associate--l+_binary64_3766 associate-+l+_binary64_3762
10×*-rgt-identity_binary64_3819 mul0-rgt_binary64_3812 mul0-lft_binary64_3811
distribute-rgt-out--_binary64_3783
*-lft-identity_binary64_3818 +-lft-identity_binary64_3813 distribute-rgt-neg-out_binary64_3789 associate--r-_binary64_3768 associate-+r-_binary64_3763
distribute-lft-neg-in_binary64_3786
remove-double-neg_binary64_3817
distribute-rgt-out_binary64_3782
+-rgt-identity_binary64_3814
--rgt-identity_binary64_3815 associate--l-_binary64_3767
1-exp_binary64_3873 distribute-neg-out_binary64_3791
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_4092 erf-erfc_binary64_4091 erf-odd_binary64_4090 if-if-and-not_binary64_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 not-gte_binary64_4081 not-lte_binary64_4080 not-gt_binary64_4079 not-lt_binary64_4078 gte-same_binary64_4077 lte-same_binary64_4076 gt-same_binary64_4075 lt-same_binary64_4074 sinh---cosh_binary64_4021 sinh-+-cosh_binary64_4020 sinh-cosh_binary64_4019 tanh-def-c_binary64_4018 tanh-def-b_binary64_4017 tanh-def-a_binary64_4016 cosh-def_binary64_4015 sinh-def_binary64_4014 tan-neg_binary64_3961 cos-neg_binary64_3960 sin-neg_binary64_3959 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 hang-m-tan_binary64_3955 hang-p-tan_binary64_3954 hang-m0-tan_binary64_3953 hang-p0-tan_binary64_3952 hang-0m-tan_binary64_3951 hang-0p-tan_binary64_3950 tan-+PI/2_binary64_3949 tan-+PI_binary64_3948 tan-PI_binary64_3947 tan-PI/3_binary64_3946 tan-PI/4_binary64_3945 tan-PI/6_binary64_3944 cos-+PI/2_binary64_3943 cos-+PI_binary64_3942 cos-PI_binary64_3941 cos-PI/2_binary64_3940 cos-PI/3_binary64_3939 cos-PI/4_binary64_3938 cos-PI/6_binary64_3937 sin-+PI/2_binary64_3936 sin-+PI_binary64_3935 sin-PI_binary64_3934 sin-PI/2_binary64_3933 sin-PI/3_binary64_3932 sin-PI/4_binary64_3931 sin-PI/6_binary64_3930 sub-1-sin_binary64_3929 sub-1-cos_binary64_3928 -1-add-sin_binary64_3927 -1-add-cos_binary64_3926 1-sub-sin_binary64_3925 1-sub-cos_binary64_3924 cos-sin-sum_binary64_3923 log-E_binary64_3919 log-pow_binary64_3918 log-rec_binary64_3917 log-div_binary64_3916 log-prod_binary64_3915 pow-base-0_binary64_3913 unpow1/3_binary64_3896 unpow3_binary64_3895 unpow2_binary64_3894 unpow1/2_binary64_3893 pow-plus_binary64_3892 exp-to-pow_binary64_3891 pow-base-1_binary64_3889 unpow0_binary64_3888 unpow1_binary64_3887 unpow-1_binary64_3886 exp-lft-cube_binary64_3885 exp-lft-sqr_binary64_3884 exp-cbrt_binary64_3883 exp-sqrt_binary64_3882 exp-prod_binary64_3881 div-exp_binary64_3880 rec-exp_binary64_3879 prod-exp_binary64_3878 exp-diff_binary64_3877 exp-neg_binary64_3876 exp-sum_binary64_3875 e-exp-1_binary64_3874 exp-1-e_binary64_3872 exp-0_binary64_3871 rem-log-exp_binary64_3870 rem-exp-log_binary64_3869 cube-unmult_binary64_3866 cube-mult_binary64_3859 cube-div_binary64_3858 cube-prod_binary64_3857 cube-neg_binary64_3856 rem-3cbrt-rft_binary64_3855 rem-3cbrt-lft_binary64_3854 rem-cbrt-cube_binary64_3853 rem-cube-cbrt_binary64_3852 sqr-abs_binary64_3844 sqr-neg_binary64_3843 rem-sqrt-square_binary64_3842 rem-square-sqrt_binary64_3841 times-frac_binary64_3835 div-sub_binary64_3834 mul-1-neg_binary64_3821 /-rgt-identity_binary64_3820 div0_binary64_3810 *-inverses_binary64_3809 +-inverses_binary64_3808 lft-mult-inverse_binary64_3807 rgt-mult-inverse_binary64_3806 remove-double-div_binary64_3805 pow-sqr_binary64_3802 sqr-pow_binary64_3801 difference-of-sqr--1_binary64_3800 difference-of-sqr-1_binary64_3799 difference-of-squares_binary64_3798 unswap-sqr_binary64_3797 swap-sqr_binary64_3796 cancel-sign-sub_binary64_3794 distribute-neg-frac_binary64_3793 distribute-frac-neg_binary64_3792 distribute-rgt1-in_binary64_3785 distribute-lft1-in_binary64_3784 distribute-lft-out--_binary64_3781 distribute-lft-out_binary64_3780 count-2_binary64_3777 associate-/l/_binary64_3776 associate-/r/_binary64_3775 associate-/l*_binary64_3774 associate-/r*_binary64_3773 associate-*l/_binary64_3772 associate-*r/_binary64_3771
Counts
1 → 1
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0913
11613
22613
34213
48712
512210
616810
729110
834510
935310
1034410
1130110

prune4.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 2
Compiler

Compiled 23 to 20 computations (13% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite52.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
12×add-sqr-sqrt_binary64_3851 cancel-sign-sub-inv_binary64_3795
10×*-un-lft-identity_binary64_3829
add-cube-cbrt_binary64_3864 distribute-rgt-in_binary64_3779 distribute-lft-in_binary64_3778 associate-+r+_binary64_3761
associate-*r*_binary64_3769
pow1_binary64_3890 add-exp-log_binary64_3867 add-log-exp_binary64_3868 add-cbrt-cube_binary64_3865 sub-neg_binary64_3822
associate-*l*_binary64_3770
associate-*r/_binary64_3771
pow-prod-down_binary64_3900 prod-exp_binary64_3878 cbrt-unprod_binary64_3862 unswap-sqr_binary64_3797 flip3--_binary64_3833 flip--_binary64_3804 difference-of-squares_binary64_3798 distribute-lft-out--_binary64_3781 *-commutative_binary64_3760 sum-log_binary64_3920 flip3-+_binary64_3832 flip-+_binary64_3803 +-commutative_binary64_3759
Counts
2 → 49
Calls

2 calls:

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

Compiled 682 to 192 computations (71.8% saved)

series341.0ms (8.1%)

Error
0.0b
Counts
2 → 33
Calls

2 calls:

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

Compiled 618 to 364 computations (41.1% saved)

simplify84.0ms (2%)

Algorithm
egg-herbie
Rules
577×neg-mul-1_binary64_3825
444×distribute-rgt-in_binary64_3779
431×distribute-lft-in_binary64_3778
313×distribute-rgt-neg-out_binary64_3789
287×distribute-lft-neg-out_binary64_3788
280×unsub-neg_binary64_3823
263×exp-prod_binary64_3881
196×*-commutative_binary64_3760
158×times-frac_binary64_3835
143×cancel-sign-sub-inv_binary64_3795
133×distribute-rgt-neg-in_binary64_3787
120×distribute-neg-in_binary64_3790
116×associate--l+_binary64_3766
107×exp-sum_binary64_3875
102×sub-neg_binary64_3822
96×neg-sub0_binary64_3824
91×distribute-lft-neg-in_binary64_3786
84×associate-*l*_binary64_3770
75×distribute-rgt-out_binary64_3782
72×associate-*r*_binary64_3769
69×sqr-pow_binary64_3801
65×associate-+l+_binary64_3762
55×exp-diff_binary64_3877
54×cube-prod_binary64_3857
53×associate-+r+_binary64_3761
50×swap-sqr_binary64_3796
48×distribute-rgt-out--_binary64_3783
45×div-sub_binary64_3834
39×+-commutative_binary64_3759
37×*-lft-identity_binary64_3818
34×log-prod_binary64_3915
33×*-rgt-identity_binary64_3819
25×associate--r+_binary64_3765
24×remove-double-neg_binary64_3817
21×distribute-neg-out_binary64_3791
20×sqr-neg_binary64_3843 mul0-rgt_binary64_3812 mul0-lft_binary64_3811 unswap-sqr_binary64_3797
16×associate--r-_binary64_3768 associate-+l-_binary64_3764 associate-+r-_binary64_3763
12×+-rgt-identity_binary64_3814
11×cube-neg_binary64_3856 distribute-lft-out_binary64_3780 associate--l-_binary64_3767
10×unpow3_binary64_3895 difference-of-squares_binary64_3798 associate-/l*_binary64_3774
exp-neg_binary64_3876
sub0-neg_binary64_3816 distribute-lft-out--_binary64_3781
cube-unmult_binary64_3866
pow-sqr_binary64_3802
unpow1/2_binary64_3893 rem-sqrt-square_binary64_3842 distribute-rgt1-in_binary64_3785 associate-*r/_binary64_3771
cube-mult_binary64_3859 mul-1-neg_binary64_3821 distribute-lft1-in_binary64_3784 associate-*l/_binary64_3772
cancel-sign-sub_binary64_3794
pow-plus_binary64_3892
div-exp_binary64_3880 prod-exp_binary64_3878 1-exp_binary64_3873 exp-1-e_binary64_3872 rem-3cbrt-lft_binary64_3854 rem-square-sqrt_binary64_3841 --rgt-identity_binary64_3815 distribute-frac-neg_binary64_3792 count-2_binary64_3777 associate-/l/_binary64_3776
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_4092 erf-erfc_binary64_4091 erf-odd_binary64_4090 if-if-and-not_binary64_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 not-gte_binary64_4081 not-lte_binary64_4080 not-gt_binary64_4079 not-lt_binary64_4078 gte-same_binary64_4077 lte-same_binary64_4076 gt-same_binary64_4075 lt-same_binary64_4074 sinh---cosh_binary64_4021 sinh-+-cosh_binary64_4020 sinh-cosh_binary64_4019 tanh-def-c_binary64_4018 tanh-def-b_binary64_4017 tanh-def-a_binary64_4016 cosh-def_binary64_4015 sinh-def_binary64_4014 tan-neg_binary64_3961 cos-neg_binary64_3960 sin-neg_binary64_3959 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 hang-m-tan_binary64_3955 hang-p-tan_binary64_3954 hang-m0-tan_binary64_3953 hang-p0-tan_binary64_3952 hang-0m-tan_binary64_3951 hang-0p-tan_binary64_3950 tan-+PI/2_binary64_3949 tan-+PI_binary64_3948 tan-PI_binary64_3947 tan-PI/3_binary64_3946 tan-PI/4_binary64_3945 tan-PI/6_binary64_3944 cos-+PI/2_binary64_3943 cos-+PI_binary64_3942 cos-PI_binary64_3941 cos-PI/2_binary64_3940 cos-PI/3_binary64_3939 cos-PI/4_binary64_3938 cos-PI/6_binary64_3937 sin-+PI/2_binary64_3936 sin-+PI_binary64_3935 sin-PI_binary64_3934 sin-PI/2_binary64_3933 sin-PI/3_binary64_3932 sin-PI/4_binary64_3931 sin-PI/6_binary64_3930 sub-1-sin_binary64_3929 sub-1-cos_binary64_3928 -1-add-sin_binary64_3927 -1-add-cos_binary64_3926 1-sub-sin_binary64_3925 1-sub-cos_binary64_3924 cos-sin-sum_binary64_3923 log-E_binary64_3919 log-pow_binary64_3918 log-rec_binary64_3917 log-div_binary64_3916 pow-base-0_binary64_3913 unpow1/3_binary64_3896 unpow2_binary64_3894 exp-to-pow_binary64_3891 pow-base-1_binary64_3889 unpow0_binary64_3888 unpow1_binary64_3887 unpow-1_binary64_3886 exp-lft-cube_binary64_3885 exp-lft-sqr_binary64_3884 exp-cbrt_binary64_3883 exp-sqrt_binary64_3882 rec-exp_binary64_3879 e-exp-1_binary64_3874 exp-0_binary64_3871 rem-log-exp_binary64_3870 rem-exp-log_binary64_3869 cube-div_binary64_3858 rem-3cbrt-rft_binary64_3855 rem-cbrt-cube_binary64_3853 rem-cube-cbrt_binary64_3852 sqr-abs_binary64_3844 /-rgt-identity_binary64_3820 +-lft-identity_binary64_3813 div0_binary64_3810 *-inverses_binary64_3809 +-inverses_binary64_3808 lft-mult-inverse_binary64_3807 rgt-mult-inverse_binary64_3806 remove-double-div_binary64_3805 difference-of-sqr--1_binary64_3800 difference-of-sqr-1_binary64_3799 distribute-neg-frac_binary64_3793 associate-/r/_binary64_3775 associate-/r*_binary64_3773
Counts
82 → 46
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0100785
1248764
2767764
32430764
44339764
55339764

prune30.0ms (0.7%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New45146
Fresh011
Picked011
Done000
Total45348
Error
0.0b
Counts
48 → 3
Compiler

Compiled 453 to 101 computations (77.7% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite44.0ms (1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
add-sqr-sqrt_binary64_3851
*-un-lft-identity_binary64_3829
associate-*l*_binary64_3770
add-log-exp_binary64_3868 pow1_binary64_3890 add-exp-log_binary64_3867 add-cbrt-cube_binary64_3865 add-cube-cbrt_binary64_3864
associate-*r*_binary64_3769
associate-*l/_binary64_3772 difference-of-squares_binary64_3798
sum-log_binary64_3920 flip3-+_binary64_3832 flip-+_binary64_3803 +-commutative_binary64_3759 pow-prod-down_binary64_3900 prod-exp_binary64_3878 cbrt-unprod_binary64_3862 unswap-sqr_binary64_3797 flip3--_binary64_3833 flip--_binary64_3804 distribute-lft-out--_binary64_3781 *-commutative_binary64_3760
Counts
2 → 34
Calls

2 calls:

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

Compiled 571 to 316 computations (44.7% saved)

series288.0ms (6.9%)

Error
0.0b
Counts
2 → 27
Calls

2 calls:

189.0ms
(+.f64 (*.f64 x y) (*.f64 (-.f64 1 x) z))
85.0ms
(*.f64 (-.f64 1 x) z)
Compiler

Compiled 529 to 326 computations (38.4% saved)

simplify86.0ms (2%)

Algorithm
egg-herbie
Rules
688×neg-sub0_binary64_3824
613×neg-mul-1_binary64_3825
489×distribute-rgt-neg-out_binary64_3789
472×associate-*l*_binary64_3770
405×distribute-lft-neg-out_binary64_3788
384×associate-*r*_binary64_3769
262×distribute-rgt-in_binary64_3779
241×distribute-lft-in_binary64_3778
205×cancel-sign-sub-inv_binary64_3795
183×distribute-rgt-out_binary64_3782
169×unsub-neg_binary64_3823
145×distribute-rgt-neg-in_binary64_3787
133×distribute-neg-in_binary64_3790
113×exp-prod_binary64_3881
108×*-commutative_binary64_3760
103×distribute-lft-neg-in_binary64_3786
91×sub-neg_binary64_3822
84×cube-prod_binary64_3857
73×exp-sum_binary64_3875
63×unswap-sqr_binary64_3797
55×distribute-rgt-out--_binary64_3783
52×sqr-pow_binary64_3801
49×log-prod_binary64_3915
48×distribute-neg-out_binary64_3791
44×exp-diff_binary64_3877
29×*-lft-identity_binary64_3818
27×associate-+l+_binary64_3762
25×*-rgt-identity_binary64_3819 +-commutative_binary64_3759
21×associate-+l-_binary64_3764
19×div-sub_binary64_3834
17×swap-sqr_binary64_3796
16×mul-1-neg_binary64_3821
15×unpow3_binary64_3895
14×cube-neg_binary64_3856 associate-+r-_binary64_3763
12×distribute-lft-out_binary64_3780
10×cube-unmult_binary64_3866 sqr-neg_binary64_3843 remove-double-neg_binary64_3817
times-frac_binary64_3835 sub0-neg_binary64_3816 associate-+r+_binary64_3761
+-rgt-identity_binary64_3814 associate--l+_binary64_3766 associate--r+_binary64_3765
exp-neg_binary64_3876 pow-sqr_binary64_3802
cube-mult_binary64_3859 distribute-rgt1-in_binary64_3785
rem-sqrt-square_binary64_3842 distribute-lft-out--_binary64_3781
difference-of-squares_binary64_3798
unpow1/2_binary64_3893 difference-of-sqr-1_binary64_3799 distribute-frac-neg_binary64_3792 associate--r-_binary64_3768 associate--l-_binary64_3767
prod-exp_binary64_3878 1-exp_binary64_3873 exp-1-e_binary64_3872 --rgt-identity_binary64_3815
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_4092 erf-erfc_binary64_4091 erf-odd_binary64_4090 if-if-and-not_binary64_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 not-gte_binary64_4081 not-lte_binary64_4080 not-gt_binary64_4079 not-lt_binary64_4078 gte-same_binary64_4077 lte-same_binary64_4076 gt-same_binary64_4075 lt-same_binary64_4074 sinh---cosh_binary64_4021 sinh-+-cosh_binary64_4020 sinh-cosh_binary64_4019 tanh-def-c_binary64_4018 tanh-def-b_binary64_4017 tanh-def-a_binary64_4016 cosh-def_binary64_4015 sinh-def_binary64_4014 tan-neg_binary64_3961 cos-neg_binary64_3960 sin-neg_binary64_3959 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 hang-m-tan_binary64_3955 hang-p-tan_binary64_3954 hang-m0-tan_binary64_3953 hang-p0-tan_binary64_3952 hang-0m-tan_binary64_3951 hang-0p-tan_binary64_3950 tan-+PI/2_binary64_3949 tan-+PI_binary64_3948 tan-PI_binary64_3947 tan-PI/3_binary64_3946 tan-PI/4_binary64_3945 tan-PI/6_binary64_3944 cos-+PI/2_binary64_3943 cos-+PI_binary64_3942 cos-PI_binary64_3941 cos-PI/2_binary64_3940 cos-PI/3_binary64_3939 cos-PI/4_binary64_3938 cos-PI/6_binary64_3937 sin-+PI/2_binary64_3936 sin-+PI_binary64_3935 sin-PI_binary64_3934 sin-PI/2_binary64_3933 sin-PI/3_binary64_3932 sin-PI/4_binary64_3931 sin-PI/6_binary64_3930 sub-1-sin_binary64_3929 sub-1-cos_binary64_3928 -1-add-sin_binary64_3927 -1-add-cos_binary64_3926 1-sub-sin_binary64_3925 1-sub-cos_binary64_3924 cos-sin-sum_binary64_3923 log-E_binary64_3919 log-pow_binary64_3918 log-rec_binary64_3917 log-div_binary64_3916 pow-base-0_binary64_3913 unpow1/3_binary64_3896 unpow2_binary64_3894 pow-plus_binary64_3892 exp-to-pow_binary64_3891 pow-base-1_binary64_3889 unpow0_binary64_3888 unpow1_binary64_3887 unpow-1_binary64_3886 exp-lft-cube_binary64_3885 exp-lft-sqr_binary64_3884 exp-cbrt_binary64_3883 exp-sqrt_binary64_3882 div-exp_binary64_3880 rec-exp_binary64_3879 e-exp-1_binary64_3874 exp-0_binary64_3871 rem-log-exp_binary64_3870 rem-exp-log_binary64_3869 cube-div_binary64_3858 rem-3cbrt-rft_binary64_3855 rem-3cbrt-lft_binary64_3854 rem-cbrt-cube_binary64_3853 rem-cube-cbrt_binary64_3852 sqr-abs_binary64_3844 rem-square-sqrt_binary64_3841 /-rgt-identity_binary64_3820 +-lft-identity_binary64_3813 mul0-rgt_binary64_3812 mul0-lft_binary64_3811 div0_binary64_3810 *-inverses_binary64_3809 +-inverses_binary64_3808 lft-mult-inverse_binary64_3807 rgt-mult-inverse_binary64_3806 remove-double-div_binary64_3805 difference-of-sqr--1_binary64_3800 cancel-sign-sub_binary64_3794 distribute-neg-frac_binary64_3793 distribute-lft1-in_binary64_3784 count-2_binary64_3777 associate-/l/_binary64_3776 associate-/r/_binary64_3775 associate-/l*_binary64_3774 associate-/r*_binary64_3773 associate-*l/_binary64_3772 associate-*r/_binary64_3771
Counts
61 → 46
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082699
1220615
2617615
32297610
44152610
55458610

prune30.0ms (0.7%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New45146
Fresh011
Picked011
Done011
Total45449
Error
0b
Counts
49 → 4
Compiler

Compiled 568 to 156 computations (72.5% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
0.5b
(cbrt.f64 x)
0.5b
(cbrt.f64 x)
0.5b
(cbrt.f64 x)

rewrite75.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
25×cbrt-prod_binary64_3860
23×add-sqr-sqrt_binary64_3851
15×add-cube-cbrt_binary64_3864 *-un-lft-identity_binary64_3829
11×pow1_binary64_3890
pow1/3_binary64_3911
add-exp-log_binary64_3867 swap-sqr_binary64_3796 associate-*l*_binary64_3770 associate-*r*_binary64_3769
add-log-exp_binary64_3868 add-cbrt-cube_binary64_3865 unswap-sqr_binary64_3797
pow-prod-down_binary64_3900 pow-prod-up_binary64_3899 pow-sqr_binary64_3802
pow2_binary64_3910 pow-plus_binary64_3892 prod-exp_binary64_3878 cbrt-unprod_binary64_3862 *-commutative_binary64_3760
Counts
4 → 73
Calls

4 calls:

7.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
1.0ms
(cbrt.f64 x)
Compiler

Compiled 1378 to 316 computations (77.1% saved)

series457.0ms (10.9%)

Error
0b
Counts
4 → 12
Calls

4 calls:

122.0ms
(*.f64 (cbrt.f64 x) (cbrt.f64 x))
112.0ms
(cbrt.f64 x)
105.0ms
(cbrt.f64 x)
104.0ms
(cbrt.f64 x)
Compiler

Compiled 591 to 400 computations (32.3% saved)

simplify99.0ms (2.4%)

Algorithm
egg-herbie
Rules
586×log-prod_binary64_3915
416×sqr-pow_binary64_3801
335×associate-*l*_binary64_3770
309×*-commutative_binary64_3760
277×distribute-rgt-neg-in_binary64_3787
257×distribute-lft-neg-in_binary64_3786
227×associate-*r*_binary64_3769
188×exp-prod_binary64_3881
161×log-pow_binary64_3918
149×cube-prod_binary64_3857
128×pow-sqr_binary64_3802
124×unswap-sqr_binary64_3797
111×swap-sqr_binary64_3796
104×associate-/l*_binary64_3774
81×cancel-sign-sub-inv_binary64_3795
75×associate-+l+_binary64_3762
69×associate-+r+_binary64_3761
61×distribute-rgt-in_binary64_3779
60×distribute-lft-out_binary64_3780
57×distribute-lft-in_binary64_3778
54×neg-sub0_binary64_3824
53×neg-mul-1_binary64_3825
48×distribute-rgt-out_binary64_3782
45×+-commutative_binary64_3759
43×pow-plus_binary64_3892 rem-sqrt-square_binary64_3842
41×times-frac_binary64_3835 sub-neg_binary64_3822
37×associate-/r/_binary64_3775
35×associate-*r/_binary64_3771
32×unpow3_binary64_3895
31×*-rgt-identity_binary64_3819 *-lft-identity_binary64_3818 associate-/l/_binary64_3776
29×count-2_binary64_3777
27×cube-mult_binary64_3859
24×associate-/r*_binary64_3773
17×log-div_binary64_3916 cube-div_binary64_3858 distribute-neg-frac_binary64_3793
13×cube-unmult_binary64_3866 distribute-rgt1-in_binary64_3785
11×distribute-rgt-neg-out_binary64_3789
10×unpow1/2_binary64_3893
distribute-lft-neg-out_binary64_3788 distribute-lft1-in_binary64_3784
unpow2_binary64_3894 associate-*l/_binary64_3772
unpow1_binary64_3887
unpow1/3_binary64_3896
exp-sqrt_binary64_3882 rem-3cbrt-lft_binary64_3854 rem-cbrt-cube_binary64_3853 mul-1-neg_binary64_3821
exp-lft-sqr_binary64_3884 1-exp_binary64_3873 exp-1-e_binary64_3872 rem-3cbrt-rft_binary64_3855 rem-square-sqrt_binary64_3841 sub0-neg_binary64_3816 --rgt-identity_binary64_3815 associate-+l-_binary64_3764
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_4092 erf-erfc_binary64_4091 erf-odd_binary64_4090 if-if-and-not_binary64_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 not-gte_binary64_4081 not-lte_binary64_4080 not-gt_binary64_4079 not-lt_binary64_4078 gte-same_binary64_4077 lte-same_binary64_4076 gt-same_binary64_4075 lt-same_binary64_4074 sinh---cosh_binary64_4021 sinh-+-cosh_binary64_4020 sinh-cosh_binary64_4019 tanh-def-c_binary64_4018 tanh-def-b_binary64_4017 tanh-def-a_binary64_4016 cosh-def_binary64_4015 sinh-def_binary64_4014 tan-neg_binary64_3961 cos-neg_binary64_3960 sin-neg_binary64_3959 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 hang-m-tan_binary64_3955 hang-p-tan_binary64_3954 hang-m0-tan_binary64_3953 hang-p0-tan_binary64_3952 hang-0m-tan_binary64_3951 hang-0p-tan_binary64_3950 tan-+PI/2_binary64_3949 tan-+PI_binary64_3948 tan-PI_binary64_3947 tan-PI/3_binary64_3946 tan-PI/4_binary64_3945 tan-PI/6_binary64_3944 cos-+PI/2_binary64_3943 cos-+PI_binary64_3942 cos-PI_binary64_3941 cos-PI/2_binary64_3940 cos-PI/3_binary64_3939 cos-PI/4_binary64_3938 cos-PI/6_binary64_3937 sin-+PI/2_binary64_3936 sin-+PI_binary64_3935 sin-PI_binary64_3934 sin-PI/2_binary64_3933 sin-PI/3_binary64_3932 sin-PI/4_binary64_3931 sin-PI/6_binary64_3930 sub-1-sin_binary64_3929 sub-1-cos_binary64_3928 -1-add-sin_binary64_3927 -1-add-cos_binary64_3926 1-sub-sin_binary64_3925 1-sub-cos_binary64_3924 cos-sin-sum_binary64_3923 log-E_binary64_3919 log-rec_binary64_3917 pow-base-0_binary64_3913 exp-to-pow_binary64_3891 pow-base-1_binary64_3889 unpow0_binary64_3888 unpow-1_binary64_3886 exp-lft-cube_binary64_3885 exp-cbrt_binary64_3883 div-exp_binary64_3880 rec-exp_binary64_3879 prod-exp_binary64_3878 exp-diff_binary64_3877 exp-neg_binary64_3876 exp-sum_binary64_3875 e-exp-1_binary64_3874 exp-0_binary64_3871 rem-log-exp_binary64_3870 rem-exp-log_binary64_3869 cube-neg_binary64_3856 rem-cube-cbrt_binary64_3852 sqr-abs_binary64_3844 sqr-neg_binary64_3843 div-sub_binary64_3834 unsub-neg_binary64_3823 /-rgt-identity_binary64_3820 remove-double-neg_binary64_3817 +-rgt-identity_binary64_3814 +-lft-identity_binary64_3813 mul0-rgt_binary64_3812 mul0-lft_binary64_3811 div0_binary64_3810 *-inverses_binary64_3809 +-inverses_binary64_3808 lft-mult-inverse_binary64_3807 rgt-mult-inverse_binary64_3806 remove-double-div_binary64_3805 difference-of-sqr--1_binary64_3800 difference-of-sqr-1_binary64_3799 difference-of-squares_binary64_3798 cancel-sign-sub_binary64_3794 distribute-frac-neg_binary64_3792 distribute-neg-out_binary64_3791 distribute-neg-in_binary64_3790 distribute-rgt-out--_binary64_3783 distribute-lft-out--_binary64_3781 associate--r-_binary64_3768 associate--l-_binary64_3767 associate--l+_binary64_3766 associate--r+_binary64_3765 associate-+r-_binary64_3763
Counts
85 → 50
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
056718
197666
2308646
31135632
42034548
53257548
64939548
74873548

prune42.0ms (1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New50050
Fresh011
Picked011
Done022
Total50454
Error
0b
Counts
54 → 4
Compiler

Compiled 824 to 244 computations (70.4% saved)

localize7.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

rewrite147.0ms (3.5%)

Algorithm
rewrite-expression-head
Error
0b
Rules
38×add-sqr-sqrt_binary64_3851
24×sqrt-prod_binary64_3845
23×pow1_binary64_3890
20×*-un-lft-identity_binary64_3829
18×add-cube-cbrt_binary64_3864
16×sqrt-div_binary64_3846
11×associate-*r*_binary64_3769
10×pow1/2_binary64_3909 sqrt-pow1_binary64_3847
associate-*l*_binary64_3770
add-exp-log_binary64_3867 add-cbrt-cube_binary64_3865 flip3-+_binary64_3832 flip-+_binary64_3803 swap-sqr_binary64_3796
cancel-sign-sub-inv_binary64_3795
pow-prod-up_binary64_3899 unswap-sqr_binary64_3797
pow-prod-down_binary64_3900 add-log-exp_binary64_3868 rem-sqrt-square_binary64_3842 frac-times_binary64_3839 associate-*r/_binary64_3771 distribute-rgt-in_binary64_3779 distribute-lft-in_binary64_3778
pow-sqr_binary64_3802
prod-exp_binary64_3878 cbrt-unprod_binary64_3862 associate-*l/_binary64_3772 *-commutative_binary64_3760 sub-neg_binary64_3822
pow2_binary64_3910 pow-plus_binary64_3892 sqrt-unprod_binary64_3849 sqr-abs_binary64_3844 rem-square-sqrt_binary64_3841 flip3--_binary64_3833 flip--_binary64_3804 difference-of-squares_binary64_3798 distribute-lft-out--_binary64_3781
Counts
4 → 118
Calls

4 calls:

11.0ms
(*.f64 (sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z)))) (sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z)))))
7.0ms
(*.f64 x (-.f64 y z))
3.0ms
(sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z))))
3.0ms
(sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z))))
Compiler

Compiled 3251 to 472 computations (85.5% saved)

series667.0ms (15.9%)

Error
0b
Counts
4 → 55
Calls

4 calls:

189.0ms
(*.f64 (sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z)))) (sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z)))))
157.0ms
(*.f64 x (-.f64 y z))
146.0ms
(sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z))))
139.0ms
(sqrt.f64 (+.f64 z (*.f64 x (-.f64 y z))))
Compiler

Compiled 2576 to 1422 computations (44.8% saved)

simplify142.0ms (3.4%)

Algorithm
egg-herbie
Rules
552×distribute-rgt-in_binary64_3779
535×distribute-lft-in_binary64_3778
368×distribute-rgt-neg-out_binary64_3789
314×unsub-neg_binary64_3823
309×*-commutative_binary64_3760
246×exp-prod_binary64_3881
164×cancel-sign-sub-inv_binary64_3795
141×associate-*l*_binary64_3770
134×unswap-sqr_binary64_3797
130×associate-*r*_binary64_3769
121×distribute-neg-in_binary64_3790
119×exp-sum_binary64_3875
115×sub-neg_binary64_3822
112×neg-sub0_binary64_3824
107×neg-mul-1_binary64_3825
97×sqr-pow_binary64_3801
73×distribute-rgt-neg-in_binary64_3787
72×log-prod_binary64_3915
65×swap-sqr_binary64_3796 associate-+l+_binary64_3762
60×*-lft-identity_binary64_3818
56×exp-diff_binary64_3877 *-rgt-identity_binary64_3819
53×distribute-lft-neg-in_binary64_3786 associate-+r+_binary64_3761
51×distribute-lft-neg-out_binary64_3788
45×+-commutative_binary64_3759
38×cube-prod_binary64_3857
25×associate--r+_binary64_3765
24×remove-double-neg_binary64_3817
22×mul0-rgt_binary64_3812 mul0-lft_binary64_3811
21×distribute-neg-out_binary64_3791
19×associate--l+_binary64_3766 associate-+r-_binary64_3763
18×distribute-rgt-out_binary64_3782 associate-+l-_binary64_3764
16×pow-sqr_binary64_3802
15×unpow3_binary64_3895 pow-plus_binary64_3892 +-rgt-identity_binary64_3814
12×rem-sqrt-square_binary64_3842
11×exp-neg_binary64_3876 distribute-rgt-out--_binary64_3783
10×difference-of-squares_binary64_3798
rem-square-sqrt_binary64_3841 sub0-neg_binary64_3816 distribute-lft-out_binary64_3780 associate-/r*_binary64_3773
log-pow_binary64_3918 sqr-neg_binary64_3843 distribute-lft-out--_binary64_3781
unpow1/2_binary64_3893 cube-unmult_binary64_3866
mul-1-neg_binary64_3821
cube-mult_binary64_3859 div-sub_binary64_3834 associate-/l*_binary64_3774
unpow2_binary64_3894 cancel-sign-sub_binary64_3794 distribute-rgt1-in_binary64_3785
cube-neg_binary64_3856 rem-3cbrt-lft_binary64_3854 count-2_binary64_3777 associate--r-_binary64_3768 associate--l-_binary64_3767
1-exp_binary64_3873 exp-1-e_binary64_3872 rem-3cbrt-rft_binary64_3855 --rgt-identity_binary64_3815 distribute-frac-neg_binary64_3792 distribute-lft1-in_binary64_3784
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_4092 erf-erfc_binary64_4091 erf-odd_binary64_4090 if-if-and-not_binary64_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 not-gte_binary64_4081 not-lte_binary64_4080 not-gt_binary64_4079 not-lt_binary64_4078 gte-same_binary64_4077 lte-same_binary64_4076 gt-same_binary64_4075 lt-same_binary64_4074 sinh---cosh_binary64_4021 sinh-+-cosh_binary64_4020 sinh-cosh_binary64_4019 tanh-def-c_binary64_4018 tanh-def-b_binary64_4017 tanh-def-a_binary64_4016 cosh-def_binary64_4015 sinh-def_binary64_4014 tan-neg_binary64_3961 cos-neg_binary64_3960 sin-neg_binary64_3959 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 hang-m-tan_binary64_3955 hang-p-tan_binary64_3954 hang-m0-tan_binary64_3953 hang-p0-tan_binary64_3952 hang-0m-tan_binary64_3951 hang-0p-tan_binary64_3950 tan-+PI/2_binary64_3949 tan-+PI_binary64_3948 tan-PI_binary64_3947 tan-PI/3_binary64_3946 tan-PI/4_binary64_3945 tan-PI/6_binary64_3944 cos-+PI/2_binary64_3943 cos-+PI_binary64_3942 cos-PI_binary64_3941 cos-PI/2_binary64_3940 cos-PI/3_binary64_3939 cos-PI/4_binary64_3938 cos-PI/6_binary64_3937 sin-+PI/2_binary64_3936 sin-+PI_binary64_3935 sin-PI_binary64_3934 sin-PI/2_binary64_3933 sin-PI/3_binary64_3932 sin-PI/4_binary64_3931 sin-PI/6_binary64_3930 sub-1-sin_binary64_3929 sub-1-cos_binary64_3928 -1-add-sin_binary64_3927 -1-add-cos_binary64_3926 1-sub-sin_binary64_3925 1-sub-cos_binary64_3924 cos-sin-sum_binary64_3923 log-E_binary64_3919 log-rec_binary64_3917 log-div_binary64_3916 pow-base-0_binary64_3913 unpow1/3_binary64_3896 exp-to-pow_binary64_3891 pow-base-1_binary64_3889 unpow0_binary64_3888 unpow1_binary64_3887 unpow-1_binary64_3886 exp-lft-cube_binary64_3885 exp-lft-sqr_binary64_3884 exp-cbrt_binary64_3883 exp-sqrt_binary64_3882 div-exp_binary64_3880 rec-exp_binary64_3879 prod-exp_binary64_3878 e-exp-1_binary64_3874 exp-0_binary64_3871 rem-log-exp_binary64_3870 rem-exp-log_binary64_3869 cube-div_binary64_3858 rem-cbrt-cube_binary64_3853 rem-cube-cbrt_binary64_3852 sqr-abs_binary64_3844 times-frac_binary64_3835 /-rgt-identity_binary64_3820 +-lft-identity_binary64_3813 div0_binary64_3810 *-inverses_binary64_3809 +-inverses_binary64_3808 lft-mult-inverse_binary64_3807 rgt-mult-inverse_binary64_3806 remove-double-div_binary64_3805 difference-of-sqr--1_binary64_3800 difference-of-sqr-1_binary64_3799 distribute-neg-frac_binary64_3793 associate-/l/_binary64_3776 associate-/r/_binary64_3775 associate-*l/_binary64_3772 associate-*r/_binary64_3771
Counts
173 → 110
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01692616
13552438
211272378
331772344
448302305
549232305

prune83.0ms (2%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1100110
Fresh000
Picked011
Done033
Total1104114
Error
0b
Counts
114 → 4
Compiler

Compiled 1979 to 292 computations (85.2% saved)

regimes172.0ms (4.1%)

Accuracy

Total 0.0b remaining (79.2%)

Threshold costs 0.0b (79.2%)

Compiler

Compiled 988 to 829 computations (16.1% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_3759
sub-neg_binary64_3822 *-commutative_binary64_3760
neg-mul-1_binary64_3825 neg-sub0_binary64_3824
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_4089 if-if-and_binary64_4088 if-if-or-not_binary64_4087 if-if-or_binary64_4086 if-not_binary64_4085 if-same_binary64_4084 if-false_binary64_4083 if-true_binary64_4082 tan-0_binary64_3958 cos-0_binary64_3957 sin-0_binary64_3956 unpow1_binary64_3887 e-exp-1_binary64_3874 1-exp_binary64_3873 exp-1-e_binary64_3872 exp-0_binary64_3871 sqr-abs_binary64_3844 sqr-neg_binary64_3843 unsub-neg_binary64_3823 mul-1-neg_binary64_3821 /-rgt-identity_binary64_3820 *-rgt-identity_binary64_3819 *-lft-identity_binary64_3818 remove-double-neg_binary64_3817 sub0-neg_binary64_3816 --rgt-identity_binary64_3815 +-rgt-identity_binary64_3814 +-lft-identity_binary64_3813 cancel-sign-sub-inv_binary64_3795 cancel-sign-sub_binary64_3794 distribute-neg-frac_binary64_3793 distribute-frac-neg_binary64_3792 distribute-neg-out_binary64_3791 distribute-neg-in_binary64_3790 distribute-rgt-neg-out_binary64_3789 distribute-lft-neg-out_binary64_3788 distribute-rgt-neg-in_binary64_3787 distribute-lft-neg-in_binary64_3786
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11110
21610
31810
41910
51910

end0.0ms (0%)

sample805.0ms (19.2%)

Algorithm
intervals
Results
219.0ms8000×body128valid
21.0ms657×body128invalid
Compiler

Compiled 246 to 207 computations (15.9% saved)

Profiling

Loading profile data...