Details

Time bar (total: 25.6s)

analyze923.0ms (3.6%)

Algorithm
search
egg-herbie
Rules
525×distribute-rgt-in_binary64_7871
489×distribute-lft-in_binary64_7870
258×sub-neg_binary64_7914
130×neg-sub0_binary64_7916
116×neg-mul-1_binary64_7917
102×associate-*l/_binary64_7864 associate-*r/_binary64_7863 *-commutative_binary64_7852
96×distribute-neg-frac_binary64_7885
72×distribute-rgt-neg-out_binary64_7881 distribute-lft-neg-out_binary64_7880
68×+-commutative_binary64_7851
66×distribute-neg-in_binary64_7882
63×sqr-pow_binary64_7893 associate-*l*_binary64_7862 associate-*r*_binary64_7861
60×cancel-sign-sub-inv_binary64_7887
54×exp-prod_binary64_7973 div-sub_binary64_7926
48×unsub-neg_binary64_7915
45×distribute-lft-neg-in_binary64_7878
39×distribute-rgt-neg-in_binary64_7879 associate--r-_binary64_7860
28×associate-+l-_binary64_7856 associate-+r-_binary64_7855
25×sub0-neg_binary64_7908
21×associate--l-_binary64_7859
18×pow-sqr_binary64_7894 difference-of-sqr--1_binary64_7892 associate-/l*_binary64_7866
14×associate-+l+_binary64_7854 associate-+r+_binary64_7853
12×remove-double-neg_binary64_7909
tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108 exp-lft-sqr_binary64_7976 prod-exp_binary64_7970 exp-neg_binary64_7968 exp-sum_binary64_7967 associate-/l/_binary64_7868
+-rgt-identity_binary64_7906
1-exp_binary64_7965
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_8184 erf-erfc_binary64_8183 erf-odd_binary64_8182 if-if-and-not_binary64_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 not-gte_binary64_8173 not-lte_binary64_8172 not-gt_binary64_8171 not-lt_binary64_8170 gte-same_binary64_8169 lte-same_binary64_8168 gt-same_binary64_8167 lt-same_binary64_8166 sinh---cosh_binary64_8113 sinh-+-cosh_binary64_8112 sinh-cosh_binary64_8111 cosh-def_binary64_8107 sinh-def_binary64_8106 tan-neg_binary64_8053 cos-neg_binary64_8052 sin-neg_binary64_8051 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 hang-m-tan_binary64_8047 hang-p-tan_binary64_8046 hang-m0-tan_binary64_8045 hang-p0-tan_binary64_8044 hang-0m-tan_binary64_8043 hang-0p-tan_binary64_8042 tan-+PI/2_binary64_8041 tan-+PI_binary64_8040 tan-PI_binary64_8039 tan-PI/3_binary64_8038 tan-PI/4_binary64_8037 tan-PI/6_binary64_8036 cos-+PI/2_binary64_8035 cos-+PI_binary64_8034 cos-PI_binary64_8033 cos-PI/2_binary64_8032 cos-PI/3_binary64_8031 cos-PI/4_binary64_8030 cos-PI/6_binary64_8029 sin-+PI/2_binary64_8028 sin-+PI_binary64_8027 sin-PI_binary64_8026 sin-PI/2_binary64_8025 sin-PI/3_binary64_8024 sin-PI/4_binary64_8023 sin-PI/6_binary64_8022 sub-1-sin_binary64_8021 sub-1-cos_binary64_8020 -1-add-sin_binary64_8019 -1-add-cos_binary64_8018 1-sub-sin_binary64_8017 1-sub-cos_binary64_8016 cos-sin-sum_binary64_8015 log-E_binary64_8011 log-pow_binary64_8010 log-rec_binary64_8009 log-div_binary64_8008 log-prod_binary64_8007 pow-base-0_binary64_8005 unpow1/3_binary64_7988 unpow3_binary64_7987 unpow2_binary64_7986 unpow1/2_binary64_7985 pow-plus_binary64_7984 exp-to-pow_binary64_7983 pow-base-1_binary64_7981 unpow0_binary64_7980 unpow1_binary64_7979 unpow-1_binary64_7978 exp-lft-cube_binary64_7977 exp-cbrt_binary64_7975 exp-sqrt_binary64_7974 div-exp_binary64_7972 rec-exp_binary64_7971 exp-diff_binary64_7969 e-exp-1_binary64_7966 exp-1-e_binary64_7964 exp-0_binary64_7963 rem-log-exp_binary64_7962 rem-exp-log_binary64_7961 cube-unmult_binary64_7958 cube-mult_binary64_7951 cube-div_binary64_7950 cube-prod_binary64_7949 cube-neg_binary64_7948 rem-3cbrt-rft_binary64_7947 rem-3cbrt-lft_binary64_7946 rem-cbrt-cube_binary64_7945 rem-cube-cbrt_binary64_7944 sqr-abs_binary64_7936 sqr-neg_binary64_7935 rem-sqrt-square_binary64_7934 rem-square-sqrt_binary64_7933 times-frac_binary64_7927 mul-1-neg_binary64_7913 /-rgt-identity_binary64_7912 *-rgt-identity_binary64_7911 *-lft-identity_binary64_7910 --rgt-identity_binary64_7907 +-lft-identity_binary64_7905 mul0-rgt_binary64_7904 mul0-lft_binary64_7903 div0_binary64_7902 *-inverses_binary64_7901 +-inverses_binary64_7900 lft-mult-inverse_binary64_7899 rgt-mult-inverse_binary64_7898 remove-double-div_binary64_7897 difference-of-sqr-1_binary64_7891 difference-of-squares_binary64_7890 unswap-sqr_binary64_7889 swap-sqr_binary64_7888 cancel-sign-sub_binary64_7886 distribute-frac-neg_binary64_7884 distribute-neg-out_binary64_7883 distribute-rgt1-in_binary64_7877 distribute-lft1-in_binary64_7876 distribute-rgt-out--_binary64_7875 distribute-rgt-out_binary64_7874 distribute-lft-out--_binary64_7873 distribute-lft-out_binary64_7872 count-2_binary64_7869 associate-/r/_binary64_7867 associate-/r*_binary64_7865 associate--l+_binary64_7858 associate--r+_binary64_7857
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
050161
1242161
2684161
31838161
45154161
044
144
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
7.8%92%0.2%8
7.8%92%0.2%9
10.9%88.9%0.2%10
34.7%65.1%0.2%11
43.1%56.7%0.2%12
44.2%55.7%0.2%13
49.5%50.3%0.2%14
Compiler

Compiled 16 to 13 computations (18.8% saved)

sample27.0ms (0.1%)

Algorithm
intervals
Results
12.0ms247×body128valid
1.0ms27×body128invalid
1.0msbody1024valid
0.0msbody512valid
0.0msbody256valid
Compiler

Compiled 31 to 29 computations (6.5% saved)

simplify60.0ms (0.2%)

Algorithm
egg-herbie
Rules
441×div-sub_binary64_7926
396×distribute-rgt-in_binary64_7871
366×distribute-lft-in_binary64_7870
260×associate-*l*_binary64_7862
256×associate-*r*_binary64_7861
222×associate-+r+_binary64_7853
176×associate-*l/_binary64_7864 associate-+l+_binary64_7854
173×associate-*r/_binary64_7863
163×associate-/l*_binary64_7866
138×sub-neg_binary64_7914
133×associate--r+_binary64_7857
114×times-frac_binary64_7927
84×associate--l+_binary64_7858
79×associate-+r-_binary64_7855
75×distribute-lft-neg-out_binary64_7880
69×distribute-rgt-neg-out_binary64_7881
64×distribute-neg-in_binary64_7882
62×associate--r-_binary64_7860
56×neg-sub0_binary64_7916
53×cancel-sign-sub-inv_binary64_7887 *-commutative_binary64_7852
51×neg-mul-1_binary64_7917 associate-+l-_binary64_7856
40×+-commutative_binary64_7851
36×associate--l-_binary64_7859
32×associate-/r*_binary64_7865
31×distribute-neg-frac_binary64_7885 distribute-rgt-neg-in_binary64_7879
28×sqr-pow_binary64_7893
27×unsub-neg_binary64_7915 associate-/r/_binary64_7867
25×distribute-lft-neg-in_binary64_7878
18×exp-prod_binary64_7973
12×pow-sqr_binary64_7894
11×sub0-neg_binary64_7908
prod-exp_binary64_7970 associate-/l/_binary64_7868
unpow3_binary64_7987 rec-exp_binary64_7971 exp-diff_binary64_7969 cube-unmult_binary64_7958 cube-prod_binary64_7949 remove-double-neg_binary64_7909 +-rgt-identity_binary64_7906 difference-of-sqr--1_binary64_7892 distribute-frac-neg_binary64_7884
exp-sum_binary64_7967 div0_binary64_7902 difference-of-sqr-1_binary64_7891
div-exp_binary64_7972 *-lft-identity_binary64_7910 --rgt-identity_binary64_7907 mul0-rgt_binary64_7904 mul0-lft_binary64_7903 distribute-neg-out_binary64_7883
tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108 unpow1/2_binary64_7985 pow-plus_binary64_7984 unpow1_binary64_7979 exp-lft-sqr_binary64_7976 exp-neg_binary64_7968 rem-sqrt-square_binary64_7934 *-rgt-identity_binary64_7911 count-2_binary64_7869
1-exp_binary64_7965 sqr-neg_binary64_7935 mul-1-neg_binary64_7913 swap-sqr_binary64_7888
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_8184 erf-erfc_binary64_8183 erf-odd_binary64_8182 if-if-and-not_binary64_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 not-gte_binary64_8173 not-lte_binary64_8172 not-gt_binary64_8171 not-lt_binary64_8170 gte-same_binary64_8169 lte-same_binary64_8168 gt-same_binary64_8167 lt-same_binary64_8166 sinh---cosh_binary64_8113 sinh-+-cosh_binary64_8112 sinh-cosh_binary64_8111 cosh-def_binary64_8107 sinh-def_binary64_8106 tan-neg_binary64_8053 cos-neg_binary64_8052 sin-neg_binary64_8051 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 hang-m-tan_binary64_8047 hang-p-tan_binary64_8046 hang-m0-tan_binary64_8045 hang-p0-tan_binary64_8044 hang-0m-tan_binary64_8043 hang-0p-tan_binary64_8042 tan-+PI/2_binary64_8041 tan-+PI_binary64_8040 tan-PI_binary64_8039 tan-PI/3_binary64_8038 tan-PI/4_binary64_8037 tan-PI/6_binary64_8036 cos-+PI/2_binary64_8035 cos-+PI_binary64_8034 cos-PI_binary64_8033 cos-PI/2_binary64_8032 cos-PI/3_binary64_8031 cos-PI/4_binary64_8030 cos-PI/6_binary64_8029 sin-+PI/2_binary64_8028 sin-+PI_binary64_8027 sin-PI_binary64_8026 sin-PI/2_binary64_8025 sin-PI/3_binary64_8024 sin-PI/4_binary64_8023 sin-PI/6_binary64_8022 sub-1-sin_binary64_8021 sub-1-cos_binary64_8020 -1-add-sin_binary64_8019 -1-add-cos_binary64_8018 1-sub-sin_binary64_8017 1-sub-cos_binary64_8016 cos-sin-sum_binary64_8015 log-E_binary64_8011 log-pow_binary64_8010 log-rec_binary64_8009 log-div_binary64_8008 log-prod_binary64_8007 pow-base-0_binary64_8005 unpow1/3_binary64_7988 unpow2_binary64_7986 exp-to-pow_binary64_7983 pow-base-1_binary64_7981 unpow0_binary64_7980 unpow-1_binary64_7978 exp-lft-cube_binary64_7977 exp-cbrt_binary64_7975 exp-sqrt_binary64_7974 e-exp-1_binary64_7966 exp-1-e_binary64_7964 exp-0_binary64_7963 rem-log-exp_binary64_7962 rem-exp-log_binary64_7961 cube-mult_binary64_7951 cube-div_binary64_7950 cube-neg_binary64_7948 rem-3cbrt-rft_binary64_7947 rem-3cbrt-lft_binary64_7946 rem-cbrt-cube_binary64_7945 rem-cube-cbrt_binary64_7944 sqr-abs_binary64_7936 rem-square-sqrt_binary64_7933 /-rgt-identity_binary64_7912 +-lft-identity_binary64_7905 *-inverses_binary64_7901 +-inverses_binary64_7900 lft-mult-inverse_binary64_7899 rgt-mult-inverse_binary64_7898 remove-double-div_binary64_7897 difference-of-squares_binary64_7890 unswap-sqr_binary64_7889 cancel-sign-sub_binary64_7886 distribute-rgt1-in_binary64_7877 distribute-lft1-in_binary64_7876 distribute-rgt-out--_binary64_7875 distribute-rgt-out_binary64_7874 distribute-lft-out--_binary64_7873 distribute-lft-out_binary64_7872
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01323
15523
214823
334923
4124723
5460523
6487923
7515523

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
4.9b
Counts
1 → 1
Compiler

Compiled 15 to 12 computations (20% saved)

localize10.0ms (0%)

Local error

Found 4 expressions with local error:

0.0b
(tanh.f64 (/.f64 t y))
0.0b
(+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
0.0b
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
5.3b
(*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))

rewrite171.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
2.2b
Rules
18×frac-sub_binary64_7930
15×cancel-sign-sub-inv_binary64_7887
14×add-sqr-sqrt_binary64_7943 *-un-lft-identity_binary64_7921
13×tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108
11×associate-*r/_binary64_7863
10×add-cube-cbrt_binary64_7956
pow1_binary64_7982 add-exp-log_binary64_7959 add-cbrt-cube_binary64_7957
add-log-exp_binary64_7960 distribute-rgt-in_binary64_7871 distribute-lft-in_binary64_7870 associate-+r+_binary64_7853
sub-neg_binary64_7914 associate-*r*_binary64_7861
pow-prod-down_binary64_7992 prod-exp_binary64_7970 cbrt-unprod_binary64_7954
flip3--_binary64_7925 flip--_binary64_7896 difference-of-squares_binary64_7890 distribute-lft-out--_binary64_7873
associate-*l*_binary64_7862 *-commutative_binary64_7852 diff-log_binary64_8013 sum-log_binary64_8012 flip3-+_binary64_7924 flip-+_binary64_7895 +-commutative_binary64_7851
Counts
4 → 93
Calls

4 calls:

14.0ms
(*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
12.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
5.0ms
(+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
2.0ms
(tanh.f64 (/.f64 t y))
Compiler

Compiled 3113 to 825 computations (73.5% saved)

series3.8s (15%)

Error
0.0b
Counts
4 → 57
Calls

4 calls:

1.5s
(+.f64 x (*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
1.4s
(*.f64 (*.f64 y z) (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
663.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
207.0ms
(tanh.f64 (/.f64 t y))
Compiler

Compiled 6519 to 4389 computations (32.7% saved)

simplify222.0ms (0.9%)

Algorithm
egg-herbie
Rules
317×times-frac_binary64_7927
239×associate-*l*_binary64_7862
229×distribute-rgt-in_binary64_7871
224×distribute-lft-in_binary64_7870
210×associate-*r*_binary64_7861
207×sub-neg_binary64_7914
205×*-commutative_binary64_7852
189×cancel-sign-sub-inv_binary64_7887
139×exp-prod_binary64_7973
132×distribute-lft-neg-out_binary64_7880
111×+-commutative_binary64_7851
109×distribute-rgt-neg-out_binary64_7881
104×distribute-neg-in_binary64_7882
92×associate--l+_binary64_7858
80×neg-sub0_binary64_7916
73×neg-mul-1_binary64_7917
62×sqr-pow_binary64_7893 distribute-neg-frac_binary64_7885
53×unswap-sqr_binary64_7889
52×associate-*r/_binary64_7863
51×associate-*l/_binary64_7864
50×*-rgt-identity_binary64_7911 *-lft-identity_binary64_7910
49×log-prod_binary64_8007 unsub-neg_binary64_7915
47×distribute-rgt-neg-in_binary64_7879
45×associate-/l*_binary64_7866
44×associate-+l+_binary64_7854
41×associate--r+_binary64_7857
36×cube-prod_binary64_7949
35×prod-exp_binary64_7970
29×distribute-lft-neg-in_binary64_7878
26×unpow3_binary64_7987
22×associate-/r*_binary64_7865
20×div-sub_binary64_7926
19×cube-mult_binary64_7951
16×mul-1-neg_binary64_7913 swap-sqr_binary64_7888
14×associate-+r+_binary64_7853
11×exp-diff_binary64_7969 associate-/r/_binary64_7867
10×log-div_binary64_8008 exp-sum_binary64_7967
div-exp_binary64_7972 cube-div_binary64_7950
pow-sqr_binary64_7894
difference-of-sqr--1_binary64_7892 difference-of-squares_binary64_7890 associate-+r-_binary64_7855
log-pow_binary64_8010 log-rec_binary64_8009 unpow1_binary64_7979 cube-unmult_binary64_7958 distribute-rgt-out--_binary64_7875 associate-+l-_binary64_7856
tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108 unpow1/2_binary64_7985 exp-lft-sqr_binary64_7976 exp-neg_binary64_7968 /-rgt-identity_binary64_7912 +-rgt-identity_binary64_7906
unpow2_binary64_7986 pow-plus_binary64_7984 1-exp_binary64_7965 exp-1-e_binary64_7964 rem-3cbrt-lft_binary64_7946 rem-sqrt-square_binary64_7934 rem-square-sqrt_binary64_7933 distribute-neg-out_binary64_7883 distribute-rgt-out_binary64_7874 associate--l-_binary64_7859
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_8184 erf-erfc_binary64_8183 erf-odd_binary64_8182 if-if-and-not_binary64_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 not-gte_binary64_8173 not-lte_binary64_8172 not-gt_binary64_8171 not-lt_binary64_8170 gte-same_binary64_8169 lte-same_binary64_8168 gt-same_binary64_8167 lt-same_binary64_8166 sinh---cosh_binary64_8113 sinh-+-cosh_binary64_8112 sinh-cosh_binary64_8111 cosh-def_binary64_8107 sinh-def_binary64_8106 tan-neg_binary64_8053 cos-neg_binary64_8052 sin-neg_binary64_8051 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 hang-m-tan_binary64_8047 hang-p-tan_binary64_8046 hang-m0-tan_binary64_8045 hang-p0-tan_binary64_8044 hang-0m-tan_binary64_8043 hang-0p-tan_binary64_8042 tan-+PI/2_binary64_8041 tan-+PI_binary64_8040 tan-PI_binary64_8039 tan-PI/3_binary64_8038 tan-PI/4_binary64_8037 tan-PI/6_binary64_8036 cos-+PI/2_binary64_8035 cos-+PI_binary64_8034 cos-PI_binary64_8033 cos-PI/2_binary64_8032 cos-PI/3_binary64_8031 cos-PI/4_binary64_8030 cos-PI/6_binary64_8029 sin-+PI/2_binary64_8028 sin-+PI_binary64_8027 sin-PI_binary64_8026 sin-PI/2_binary64_8025 sin-PI/3_binary64_8024 sin-PI/4_binary64_8023 sin-PI/6_binary64_8022 sub-1-sin_binary64_8021 sub-1-cos_binary64_8020 -1-add-sin_binary64_8019 -1-add-cos_binary64_8018 1-sub-sin_binary64_8017 1-sub-cos_binary64_8016 cos-sin-sum_binary64_8015 log-E_binary64_8011 pow-base-0_binary64_8005 unpow1/3_binary64_7988 exp-to-pow_binary64_7983 pow-base-1_binary64_7981 unpow0_binary64_7980 unpow-1_binary64_7978 exp-lft-cube_binary64_7977 exp-cbrt_binary64_7975 exp-sqrt_binary64_7974 rec-exp_binary64_7971 e-exp-1_binary64_7966 exp-0_binary64_7963 rem-log-exp_binary64_7962 rem-exp-log_binary64_7961 cube-neg_binary64_7948 rem-3cbrt-rft_binary64_7947 rem-cbrt-cube_binary64_7945 rem-cube-cbrt_binary64_7944 sqr-abs_binary64_7936 sqr-neg_binary64_7935 remove-double-neg_binary64_7909 sub0-neg_binary64_7908 --rgt-identity_binary64_7907 +-lft-identity_binary64_7905 mul0-rgt_binary64_7904 mul0-lft_binary64_7903 div0_binary64_7902 *-inverses_binary64_7901 +-inverses_binary64_7900 lft-mult-inverse_binary64_7899 rgt-mult-inverse_binary64_7898 remove-double-div_binary64_7897 difference-of-sqr-1_binary64_7891 cancel-sign-sub_binary64_7886 distribute-frac-neg_binary64_7884 distribute-rgt1-in_binary64_7877 distribute-lft1-in_binary64_7876 distribute-lft-out--_binary64_7873 distribute-lft-out_binary64_7872 count-2_binary64_7869 associate-/l/_binary64_7868 associate--r-_binary64_7860
Counts
150 → 112
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02996099
19005609
232115609
348415609
449965609
549715609

prune169.0ms (0.7%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1093112
Fresh000
Picked101
Done000
Total1103113
Error
0.3b
Counts
113 → 3
Compiler

Compiled 4062 to 1602 computations (60.6% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
0.1b
(pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3)
5.3b
(*.f64 (*.f64 y z) (cbrt.f64 (pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3)))
6.4b
(cbrt.f64 (pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3))

rewrite313.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
36×frac-sub_binary64_7930
33×cube-div_binary64_7950
32×cbrt-prod_binary64_7952
29×add-sqr-sqrt_binary64_7943 *-un-lft-identity_binary64_7921
24×tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108
22×cbrt-div_binary64_7953
19×associate-*r*_binary64_7861
15×add-cube-cbrt_binary64_7956 unpow-prod-down_binary64_8000 cube-prod_binary64_7949
11×associate-*r/_binary64_7863
10×pow1_binary64_7982 add-exp-log_binary64_7959
add-cbrt-cube_binary64_7957
difference-of-squares_binary64_7890 distribute-lft-out--_binary64_7873
add-log-exp_binary64_7960
flip3--_binary64_7925 flip--_binary64_7896
unpow3_binary64_7987 cube-mult_binary64_7951 sqr-pow_binary64_7893 pow-prod-down_binary64_7992 prod-exp_binary64_7970 cbrt-unprod_binary64_7954 pow-unpow_binary64_7998 cancel-sign-sub-inv_binary64_7887
pow1/3_binary64_8003 rem-cbrt-cube_binary64_7945 associate-*l*_binary64_7862 *-commutative_binary64_7852 pow-pow_binary64_7993 pow-to-exp_binary64_7990 pow-exp_binary64_7989 rem-cube-cbrt_binary64_7944 diff-log_binary64_8013 sub-neg_binary64_7914
Counts
4 → 144
Calls

4 calls:

20.0ms
(*.f64 (*.f64 y z) (cbrt.f64 (pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3)))
13.0ms
(cbrt.f64 (pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3))
10.0ms
(pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3)
8.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
Compiler

Compiled 5745 to 2115 computations (63.2% saved)

series4.2s (16.6%)

Error
0.3b
Counts
4 → 52
Calls

4 calls:

1.4s
(pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3)
1.4s
(*.f64 (*.f64 y z) (cbrt.f64 (pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3)))
672.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
648.0ms
(cbrt.f64 (pow.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))) 3))
Compiler

Compiled 8200 to 5829 computations (28.9% saved)

simplify221.0ms (0.9%)

Algorithm
egg-herbie
Rules
301×distribute-rgt-in_binary64_7871 distribute-lft-in_binary64_7870 associate-*r*_binary64_7861
300×associate-*l*_binary64_7862
151×times-frac_binary64_7927
132×associate-/r*_binary64_7865
122×associate-/l*_binary64_7866
117×*-commutative_binary64_7852
110×sqr-pow_binary64_7893
86×log-prod_binary64_8007
80×associate-*l/_binary64_7864 associate-*r/_binary64_7863
78×associate--l+_binary64_7858
75×sub-neg_binary64_7914
54×+-commutative_binary64_7851
45×unpow3_binary64_7987 cube-mult_binary64_7951
41×neg-sub0_binary64_7916
40×neg-mul-1_binary64_7917
32×cancel-sign-sub-inv_binary64_7887
28×rem-cbrt-cube_binary64_7945 swap-sqr_binary64_7888 distribute-neg-in_binary64_7882
26×distribute-rgt-neg-in_binary64_7879
25×exp-prod_binary64_7973
22×cube-prod_binary64_7949 associate-+r+_binary64_7853
19×unswap-sqr_binary64_7889
16×associate-/r/_binary64_7867
14×distribute-lft-neg-in_binary64_7878
12×distribute-lft-neg-out_binary64_7880
11×distribute-neg-frac_binary64_7885 associate--r+_binary64_7857
10×log-pow_binary64_8010 distribute-rgt-out_binary64_7874
div-sub_binary64_7926 *-rgt-identity_binary64_7911
unpow1_binary64_7979 pow-sqr_binary64_7894
unpow2_binary64_7986 cube-div_binary64_7950 *-lft-identity_binary64_7910
mul-1-neg_binary64_7913
cube-unmult_binary64_7958
rem-sqrt-square_binary64_7934 difference-of-squares_binary64_7890
tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108 exp-lft-sqr_binary64_7976 prod-exp_binary64_7970 exp-neg_binary64_7968 rem-3cbrt-lft_binary64_7946 rem-square-sqrt_binary64_7933
unpow1/2_binary64_7985 pow-plus_binary64_7984 div-exp_binary64_7972 exp-sum_binary64_7967 1-exp_binary64_7965 rem-cube-cbrt_binary64_7944 unsub-neg_binary64_7915 distribute-rgt-neg-out_binary64_7881 distribute-lft-out_binary64_7872 associate-+l+_binary64_7854
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_8184 erf-erfc_binary64_8183 erf-odd_binary64_8182 if-if-and-not_binary64_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 not-gte_binary64_8173 not-lte_binary64_8172 not-gt_binary64_8171 not-lt_binary64_8170 gte-same_binary64_8169 lte-same_binary64_8168 gt-same_binary64_8167 lt-same_binary64_8166 sinh---cosh_binary64_8113 sinh-+-cosh_binary64_8112 sinh-cosh_binary64_8111 cosh-def_binary64_8107 sinh-def_binary64_8106 tan-neg_binary64_8053 cos-neg_binary64_8052 sin-neg_binary64_8051 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 hang-m-tan_binary64_8047 hang-p-tan_binary64_8046 hang-m0-tan_binary64_8045 hang-p0-tan_binary64_8044 hang-0m-tan_binary64_8043 hang-0p-tan_binary64_8042 tan-+PI/2_binary64_8041 tan-+PI_binary64_8040 tan-PI_binary64_8039 tan-PI/3_binary64_8038 tan-PI/4_binary64_8037 tan-PI/6_binary64_8036 cos-+PI/2_binary64_8035 cos-+PI_binary64_8034 cos-PI_binary64_8033 cos-PI/2_binary64_8032 cos-PI/3_binary64_8031 cos-PI/4_binary64_8030 cos-PI/6_binary64_8029 sin-+PI/2_binary64_8028 sin-+PI_binary64_8027 sin-PI_binary64_8026 sin-PI/2_binary64_8025 sin-PI/3_binary64_8024 sin-PI/4_binary64_8023 sin-PI/6_binary64_8022 sub-1-sin_binary64_8021 sub-1-cos_binary64_8020 -1-add-sin_binary64_8019 -1-add-cos_binary64_8018 1-sub-sin_binary64_8017 1-sub-cos_binary64_8016 cos-sin-sum_binary64_8015 log-E_binary64_8011 log-rec_binary64_8009 log-div_binary64_8008 pow-base-0_binary64_8005 unpow1/3_binary64_7988 exp-to-pow_binary64_7983 pow-base-1_binary64_7981 unpow0_binary64_7980 unpow-1_binary64_7978 exp-lft-cube_binary64_7977 exp-cbrt_binary64_7975 exp-sqrt_binary64_7974 rec-exp_binary64_7971 exp-diff_binary64_7969 e-exp-1_binary64_7966 exp-1-e_binary64_7964 exp-0_binary64_7963 rem-log-exp_binary64_7962 rem-exp-log_binary64_7961 cube-neg_binary64_7948 rem-3cbrt-rft_binary64_7947 sqr-abs_binary64_7936 sqr-neg_binary64_7935 /-rgt-identity_binary64_7912 remove-double-neg_binary64_7909 sub0-neg_binary64_7908 --rgt-identity_binary64_7907 +-rgt-identity_binary64_7906 +-lft-identity_binary64_7905 mul0-rgt_binary64_7904 mul0-lft_binary64_7903 div0_binary64_7902 *-inverses_binary64_7901 +-inverses_binary64_7900 lft-mult-inverse_binary64_7899 rgt-mult-inverse_binary64_7898 remove-double-div_binary64_7897 difference-of-sqr--1_binary64_7892 difference-of-sqr-1_binary64_7891 cancel-sign-sub_binary64_7886 distribute-frac-neg_binary64_7884 distribute-neg-out_binary64_7883 distribute-rgt1-in_binary64_7877 distribute-lft1-in_binary64_7876 distribute-rgt-out--_binary64_7875 distribute-lft-out--_binary64_7873 count-2_binary64_7869 associate-/l/_binary64_7868 associate--r-_binary64_7860 associate--l-_binary64_7859 associate-+l-_binary64_7856 associate-+r-_binary64_7855
Counts
196 → 154
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
04159801
112939184
248959184
350019184

prune304.0ms (1.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1531154
Fresh022
Picked011
Done000
Total1534157
Error
0.0b
Counts
157 → 4
Compiler

Compiled 6749 to 3091 computations (54.2% saved)

localize10.0ms (0%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 x (*.f64 y (*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))))
0.0b
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
1.8b
(*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
2.0b
(*.f64 y (*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))

rewrite241.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
36×distribute-rgt-in_binary64_7871 distribute-lft-in_binary64_7870
33×cancel-sign-sub-inv_binary64_7887 associate-*r/_binary64_7863
27×frac-sub_binary64_7930
24×add-sqr-sqrt_binary64_7943
22×*-un-lft-identity_binary64_7921
18×add-cube-cbrt_binary64_7956 tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108
16×associate-+r+_binary64_7853
11×pow1_binary64_7982 add-exp-log_binary64_7959 add-cbrt-cube_binary64_7957 sub-neg_binary64_7914
add-log-exp_binary64_7960
associate-*l*_binary64_7862 associate-*r*_binary64_7861
pow-prod-down_binary64_7992 prod-exp_binary64_7970 cbrt-unprod_binary64_7954
flip3--_binary64_7925 flip--_binary64_7896
*-commutative_binary64_7852 difference-of-squares_binary64_7890 distribute-lft-out--_binary64_7873
unswap-sqr_binary64_7889 diff-log_binary64_8013 sum-log_binary64_8012 flip3-+_binary64_7924 flip-+_binary64_7895 +-commutative_binary64_7851
Counts
4 → 136
Calls

4 calls:

17.0ms
(*.f64 y (*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
13.0ms
(*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
8.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
6.0ms
(+.f64 x (*.f64 y (*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))))
Compiler

Compiled 4544 to 1228 computations (73% saved)

series4.8s (18.8%)

Error
0b
Counts
4 → 63
Calls

4 calls:

1.5s
(+.f64 x (*.f64 y (*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))))
1.3s
(*.f64 y (*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
1.2s
(*.f64 z (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
646.0ms
(-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))
Compiler

Compiled 7971 to 5445 computations (31.7% saved)

simplify233.0ms (0.9%)

Algorithm
egg-herbie
Rules
501×times-frac_binary64_7927
268×associate-*r*_binary64_7861
267×associate-*l*_binary64_7862
230×distribute-rgt-in_binary64_7871
224×distribute-lft-in_binary64_7870
215×sub-neg_binary64_7914
212×*-commutative_binary64_7852
193×cancel-sign-sub-inv_binary64_7887
181×exp-prod_binary64_7973
124×+-commutative_binary64_7851
97×associate--l+_binary64_7858
84×neg-sub0_binary64_7916
74×neg-mul-1_binary64_7917
68×cube-prod_binary64_7949 associate-/l*_binary64_7866
67×*-rgt-identity_binary64_7911
62×*-lft-identity_binary64_7910
61×sqr-pow_binary64_7893
57×prod-exp_binary64_7970
56×unsub-neg_binary64_7915 associate-*r/_binary64_7863
53×associate-*l/_binary64_7864
48×unswap-sqr_binary64_7889
45×associate--r+_binary64_7857
44×associate-+l+_binary64_7854
41×distribute-rgt-neg-in_binary64_7879
30×exp-diff_binary64_7969 associate-/r*_binary64_7865
27×log-prod_binary64_8007
25×distribute-lft-neg-out_binary64_7880
24×unpow3_binary64_7987 exp-sum_binary64_7967 distribute-lft-neg-in_binary64_7878
22×distribute-neg-in_binary64_7882
21×div-sub_binary64_7926
20×cube-mult_binary64_7951
17×mul-1-neg_binary64_7913
16×swap-sqr_binary64_7888 distribute-neg-frac_binary64_7885 associate-/r/_binary64_7867
14×distribute-rgt-neg-out_binary64_7881
13×associate-+r+_binary64_7853
10×/-rgt-identity_binary64_7912
cube-div_binary64_7950
cube-unmult_binary64_7958 pow-sqr_binary64_7894
div-exp_binary64_7972
difference-of-squares_binary64_7890
difference-of-sqr--1_binary64_7892
unpow1_binary64_7979 distribute-rgt-out--_binary64_7875 distribute-rgt-out_binary64_7874 associate-+r-_binary64_7855
tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108 log-pow_binary64_8010 unpow1/2_binary64_7985 exp-lft-sqr_binary64_7976 exp-neg_binary64_7968 rem-sqrt-square_binary64_7934 +-rgt-identity_binary64_7906
log-div_binary64_8008 unpow2_binary64_7986 pow-plus_binary64_7984 1-exp_binary64_7965 exp-1-e_binary64_7964 rem-3cbrt-lft_binary64_7946 rem-square-sqrt_binary64_7933 associate-+l-_binary64_7856
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_8184 erf-erfc_binary64_8183 erf-odd_binary64_8182 if-if-and-not_binary64_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 not-gte_binary64_8173 not-lte_binary64_8172 not-gt_binary64_8171 not-lt_binary64_8170 gte-same_binary64_8169 lte-same_binary64_8168 gt-same_binary64_8167 lt-same_binary64_8166 sinh---cosh_binary64_8113 sinh-+-cosh_binary64_8112 sinh-cosh_binary64_8111 cosh-def_binary64_8107 sinh-def_binary64_8106 tan-neg_binary64_8053 cos-neg_binary64_8052 sin-neg_binary64_8051 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 hang-m-tan_binary64_8047 hang-p-tan_binary64_8046 hang-m0-tan_binary64_8045 hang-p0-tan_binary64_8044 hang-0m-tan_binary64_8043 hang-0p-tan_binary64_8042 tan-+PI/2_binary64_8041 tan-+PI_binary64_8040 tan-PI_binary64_8039 tan-PI/3_binary64_8038 tan-PI/4_binary64_8037 tan-PI/6_binary64_8036 cos-+PI/2_binary64_8035 cos-+PI_binary64_8034 cos-PI_binary64_8033 cos-PI/2_binary64_8032 cos-PI/3_binary64_8031 cos-PI/4_binary64_8030 cos-PI/6_binary64_8029 sin-+PI/2_binary64_8028 sin-+PI_binary64_8027 sin-PI_binary64_8026 sin-PI/2_binary64_8025 sin-PI/3_binary64_8024 sin-PI/4_binary64_8023 sin-PI/6_binary64_8022 sub-1-sin_binary64_8021 sub-1-cos_binary64_8020 -1-add-sin_binary64_8019 -1-add-cos_binary64_8018 1-sub-sin_binary64_8017 1-sub-cos_binary64_8016 cos-sin-sum_binary64_8015 log-E_binary64_8011 log-rec_binary64_8009 pow-base-0_binary64_8005 unpow1/3_binary64_7988 exp-to-pow_binary64_7983 pow-base-1_binary64_7981 unpow0_binary64_7980 unpow-1_binary64_7978 exp-lft-cube_binary64_7977 exp-cbrt_binary64_7975 exp-sqrt_binary64_7974 rec-exp_binary64_7971 e-exp-1_binary64_7966 exp-0_binary64_7963 rem-log-exp_binary64_7962 rem-exp-log_binary64_7961 cube-neg_binary64_7948 rem-3cbrt-rft_binary64_7947 rem-cbrt-cube_binary64_7945 rem-cube-cbrt_binary64_7944 sqr-abs_binary64_7936 sqr-neg_binary64_7935 remove-double-neg_binary64_7909 sub0-neg_binary64_7908 --rgt-identity_binary64_7907 +-lft-identity_binary64_7905 mul0-rgt_binary64_7904 mul0-lft_binary64_7903 div0_binary64_7902 *-inverses_binary64_7901 +-inverses_binary64_7900 lft-mult-inverse_binary64_7899 rgt-mult-inverse_binary64_7898 remove-double-div_binary64_7897 difference-of-sqr-1_binary64_7891 cancel-sign-sub_binary64_7886 distribute-frac-neg_binary64_7884 distribute-neg-out_binary64_7883 distribute-rgt1-in_binary64_7877 distribute-lft1-in_binary64_7876 distribute-lft-out--_binary64_7873 distribute-lft-out_binary64_7872 count-2_binary64_7869 associate-/l/_binary64_7868 associate--r-_binary64_7860 associate--l-_binary64_7859
Counts
199 → 145
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03529264
19687480
233867480
346827474
450017474

prune213.0ms (0.8%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1450145
Fresh022
Picked011
Done011
Total1454149
Error
0.0b
Counts
149 → 4
Compiler

Compiled 5129 to 2152 computations (58% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(*.f64 (*.f64 (*.f64 z y) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
1.9b
(*.f64 (*.f64 z y) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
3.3b
(sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
3.3b
(sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))

rewrite1.1s (4.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
297×sqrt-div_binary64_7938
243×frac-sub_binary64_7930
162×tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108
154×associate-*r/_binary64_7863
121×frac-times_binary64_7931
27×flip3--_binary64_7925 flip--_binary64_7896
20×pow1_binary64_7982 add-sqr-sqrt_binary64_7943 sqrt-prod_binary64_7937
18×add-exp-log_binary64_7959 add-cbrt-cube_binary64_7957 *-un-lft-identity_binary64_7921
16×associate-*r*_binary64_7861
11×associate-*l/_binary64_7864
10×add-cube-cbrt_binary64_7956
pow-prod-down_binary64_7992 prod-exp_binary64_7970 cbrt-unprod_binary64_7954
add-log-exp_binary64_7960 difference-of-squares_binary64_7890 distribute-lft-out--_binary64_7873
pow1/2_binary64_8001 sqrt-pow1_binary64_7939 rem-sqrt-square_binary64_7934 associate-*l*_binary64_7862 *-commutative_binary64_7852
Counts
4 → 255
Calls

4 calls:

32.0ms
(*.f64 (*.f64 (*.f64 z y) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
15.0ms
(*.f64 (*.f64 z y) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
10.0ms
(sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
8.0ms
(sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
Compiler

Compiled 21247 to 7446 computations (65% saved)

series4.8s (18.7%)

Error
0.0b
Counts
4 → 54
Calls

4 calls:

1.6s
(*.f64 (*.f64 z y) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
1.4s
(*.f64 (*.f64 (*.f64 z y) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))) (sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y)))))
820.0ms
(sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
816.0ms
(sqrt.f64 (-.f64 (tanh.f64 (/.f64 t y)) (tanh.f64 (/.f64 x y))))
Compiler

Compiled 9748 to 6450 computations (33.8% saved)

simplify703.0ms (2.8%)

Algorithm
egg-herbie
Rules
636×associate-*r*_binary64_7861
307×*-commutative_binary64_7852
293×times-frac_binary64_7927
186×distribute-rgt-in_binary64_7871 distribute-lft-in_binary64_7870
183×associate-*l*_binary64_7862
175×cancel-sign-sub-inv_binary64_7887
164×sub-neg_binary64_7914
88×+-commutative_binary64_7851
75×neg-sub0_binary64_7916
72×exp-prod_binary64_7973
71×neg-mul-1_binary64_7917
68×sqr-pow_binary64_7893
62×associate-*r/_binary64_7863
54×prod-exp_binary64_7970
52×associate-/l*_binary64_7866 associate-*l/_binary64_7864
48×*-rgt-identity_binary64_7911
47×unsub-neg_binary64_7915
45×associate--l+_binary64_7858
39×associate-+l+_binary64_7854
36×associate--r+_binary64_7857
34×unswap-sqr_binary64_7889
33×log-prod_binary64_8007 distribute-rgt-neg-in_binary64_7879
32×cube-prod_binary64_7949
26×*-lft-identity_binary64_7910
25×rem-sqrt-square_binary64_7934 associate-/r*_binary64_7865
24×distribute-neg-in_binary64_7882
23×rem-square-sqrt_binary64_7933 swap-sqr_binary64_7888
22×unpow3_binary64_7987
21×distribute-lft-neg-in_binary64_7878
17×cube-mult_binary64_7951
16×div-sub_binary64_7926
14×mul-1-neg_binary64_7913
12×distribute-neg-frac_binary64_7885 associate-/r/_binary64_7867
11×distribute-lft-neg-out_binary64_7880
10×associate-+r+_binary64_7853
exp-sum_binary64_7967 pow-sqr_binary64_7894
cube-unmult_binary64_7958
cube-div_binary64_7950
div-exp_binary64_7972
unpow1/2_binary64_7985 unpow1_binary64_7979 difference-of-sqr--1_binary64_7892 difference-of-squares_binary64_7890
pow-plus_binary64_7984 exp-diff_binary64_7969 distribute-rgt-out_binary64_7874
tanh-def-c_binary64_8110 tanh-def-b_binary64_8109 tanh-def-a_binary64_8108 log-pow_binary64_8010 unpow2_binary64_7986 unpow-1_binary64_7978 exp-lft-sqr_binary64_7976 exp-neg_binary64_7968 /-rgt-identity_binary64_7912 distribute-rgt-out--_binary64_7875
1-exp_binary64_7965 exp-1-e_binary64_7964 count-2_binary64_7869
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_8184 erf-erfc_binary64_8183 erf-odd_binary64_8182 if-if-and-not_binary64_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 not-gte_binary64_8173 not-lte_binary64_8172 not-gt_binary64_8171 not-lt_binary64_8170 gte-same_binary64_8169 lte-same_binary64_8168 gt-same_binary64_8167 lt-same_binary64_8166 sinh---cosh_binary64_8113 sinh-+-cosh_binary64_8112 sinh-cosh_binary64_8111 cosh-def_binary64_8107 sinh-def_binary64_8106 tan-neg_binary64_8053 cos-neg_binary64_8052 sin-neg_binary64_8051 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 hang-m-tan_binary64_8047 hang-p-tan_binary64_8046 hang-m0-tan_binary64_8045 hang-p0-tan_binary64_8044 hang-0m-tan_binary64_8043 hang-0p-tan_binary64_8042 tan-+PI/2_binary64_8041 tan-+PI_binary64_8040 tan-PI_binary64_8039 tan-PI/3_binary64_8038 tan-PI/4_binary64_8037 tan-PI/6_binary64_8036 cos-+PI/2_binary64_8035 cos-+PI_binary64_8034 cos-PI_binary64_8033 cos-PI/2_binary64_8032 cos-PI/3_binary64_8031 cos-PI/4_binary64_8030 cos-PI/6_binary64_8029 sin-+PI/2_binary64_8028 sin-+PI_binary64_8027 sin-PI_binary64_8026 sin-PI/2_binary64_8025 sin-PI/3_binary64_8024 sin-PI/4_binary64_8023 sin-PI/6_binary64_8022 sub-1-sin_binary64_8021 sub-1-cos_binary64_8020 -1-add-sin_binary64_8019 -1-add-cos_binary64_8018 1-sub-sin_binary64_8017 1-sub-cos_binary64_8016 cos-sin-sum_binary64_8015 log-E_binary64_8011 log-rec_binary64_8009 log-div_binary64_8008 pow-base-0_binary64_8005 unpow1/3_binary64_7988 exp-to-pow_binary64_7983 pow-base-1_binary64_7981 unpow0_binary64_7980 exp-lft-cube_binary64_7977 exp-cbrt_binary64_7975 exp-sqrt_binary64_7974 rec-exp_binary64_7971 e-exp-1_binary64_7966 exp-0_binary64_7963 rem-log-exp_binary64_7962 rem-exp-log_binary64_7961 cube-neg_binary64_7948 rem-3cbrt-rft_binary64_7947 rem-3cbrt-lft_binary64_7946 rem-cbrt-cube_binary64_7945 rem-cube-cbrt_binary64_7944 sqr-abs_binary64_7936 sqr-neg_binary64_7935 remove-double-neg_binary64_7909 sub0-neg_binary64_7908 --rgt-identity_binary64_7907 +-rgt-identity_binary64_7906 +-lft-identity_binary64_7905 mul0-rgt_binary64_7904 mul0-lft_binary64_7903 div0_binary64_7902 *-inverses_binary64_7901 +-inverses_binary64_7900 lft-mult-inverse_binary64_7899 rgt-mult-inverse_binary64_7898 remove-double-div_binary64_7897 difference-of-sqr-1_binary64_7891 cancel-sign-sub_binary64_7886 distribute-frac-neg_binary64_7884 distribute-neg-out_binary64_7883 distribute-rgt-neg-out_binary64_7881 distribute-rgt1-in_binary64_7877 distribute-lft1-in_binary64_7876 distribute-lft-out--_binary64_7873 distribute-lft-out_binary64_7872 associate-/l/_binary64_7868 associate--r-_binary64_7860 associate--l-_binary64_7859 associate-+l-_binary64_7856 associate-+r-_binary64_7855
Counts
309 → 272
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
057832379
1161829492
2383329480
3488329480
4496229480

prune993.0ms (3.9%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New2720272
Fresh011
Picked011
Done022
Total2724276
Error
0.0b
Counts
276 → 4
Compiler

Compiled 20858 to 7880 computations (62.2% saved)

regimes463.0ms (1.8%)

Accuracy

Total 1.4b remaining (99.2%)

Threshold costs 0b (0%)

Compiler

Compiled 4572 to 3010 computations (34.2% saved)

bsearch3.0ms (0%)

Compiler

Compiled 15 to 12 computations (20% saved)

simplify5.0ms (0%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64_7852
+-commutative_binary64_7851
sub-neg_binary64_7914
neg-mul-1_binary64_7917 neg-sub0_binary64_7916
cancel-sign-sub-inv_binary64_7887 distribute-rgt-neg-in_binary64_7879
distribute-lft-neg-out_binary64_7880 distribute-lft-neg-in_binary64_7878
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_8181 if-if-and_binary64_8180 if-if-or-not_binary64_8179 if-if-or_binary64_8178 if-not_binary64_8177 if-same_binary64_8176 if-false_binary64_8175 if-true_binary64_8174 tan-0_binary64_8050 cos-0_binary64_8049 sin-0_binary64_8048 unpow1_binary64_7979 e-exp-1_binary64_7966 1-exp_binary64_7965 exp-1-e_binary64_7964 exp-0_binary64_7963 sqr-abs_binary64_7936 sqr-neg_binary64_7935 unsub-neg_binary64_7915 mul-1-neg_binary64_7913 /-rgt-identity_binary64_7912 *-rgt-identity_binary64_7911 *-lft-identity_binary64_7910 remove-double-neg_binary64_7909 sub0-neg_binary64_7908 --rgt-identity_binary64_7907 +-rgt-identity_binary64_7906 +-lft-identity_binary64_7905 cancel-sign-sub_binary64_7886 distribute-neg-frac_binary64_7885 distribute-frac-neg_binary64_7884 distribute-neg-out_binary64_7883 distribute-neg-in_binary64_7882 distribute-rgt-neg-out_binary64_7881
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02464
14064
25364
36164
46664
56764
66764

end0.0ms (0%)

sample1.5s (5.8%)

Algorithm
intervals
Results
390.0ms7803×body128valid
26.0ms558×body128invalid
12.0ms67×body1024valid
10.0ms76×body512valid
5.0ms54×body256valid
Compiler

Compiled 964 to 629 computations (34.8% saved)

Profiling

Loading profile data...