Details

Time bar (total: 13.8s)

analyze1.9s (13.9%)

Algorithm
search
egg-herbie
Rules
514×exp-prod_binary64_14111
284×associate-*r*_binary64_13999
265×associate-*l*_binary64_14000
250×associate--r+_binary64_13995
208×distribute-neg-in_binary64_14020
150×distribute-lft-neg-out_binary64_14018
131×distribute-rgt-neg-out_binary64_14019
116×distribute-rgt-in_binary64_14009 distribute-lft-in_binary64_14008
108×associate-*l/_binary64_14002 associate-*r/_binary64_14001 associate-+l+_binary64_13992
97×sub-neg_binary64_14052 +-commutative_binary64_13989
85×*-commutative_binary64_13990
84×exp-sum_binary64_14105
71×neg-mul-1_binary64_14055 neg-sub0_binary64_14054
63×sqr-pow_binary64_14031
57×associate-+r-_binary64_13993
56×exp-lft-sqr_binary64_14114
55×associate-+l-_binary64_13994
47×distribute-rgt-neg-in_binary64_14017
42×cancel-sign-sub-inv_binary64_14025
33×distribute-lft-neg-in_binary64_14016
32×associate-/r/_binary64_14005 associate-/l*_binary64_14004
28×distribute-neg-frac_binary64_14023
24×unsub-neg_binary64_14053 associate--l+_binary64_13996
21×unpow1_binary64_14117 prod-exp_binary64_14108 exp-diff_binary64_14107 div-sub_binary64_14064 pow-sqr_binary64_14032
14×associate-/r*_binary64_14003
remove-double-neg_binary64_14047
distribute-rgt-out_binary64_14012
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_14322 erf-erfc_binary64_14321 erf-odd_binary64_14320 if-if-and-not_binary64_14319 if-if-and_binary64_14318 if-if-or-not_binary64_14317 if-if-or_binary64_14316 if-not_binary64_14315 if-same_binary64_14314 if-false_binary64_14313 if-true_binary64_14312 not-gte_binary64_14311 not-lte_binary64_14310 not-gt_binary64_14309 not-lt_binary64_14308 gte-same_binary64_14307 lte-same_binary64_14306 gt-same_binary64_14305 lt-same_binary64_14304 sinh---cosh_binary64_14251 sinh-+-cosh_binary64_14250 sinh-cosh_binary64_14249 tanh-def-c_binary64_14248 tanh-def-b_binary64_14247 tanh-def-a_binary64_14246 cosh-def_binary64_14245 sinh-def_binary64_14244 tan-neg_binary64_14191 cos-neg_binary64_14190 sin-neg_binary64_14189 tan-0_binary64_14188 cos-0_binary64_14187 sin-0_binary64_14186 hang-m-tan_binary64_14185 hang-p-tan_binary64_14184 hang-m0-tan_binary64_14183 hang-p0-tan_binary64_14182 hang-0m-tan_binary64_14181 hang-0p-tan_binary64_14180 tan-+PI/2_binary64_14179 tan-+PI_binary64_14178 tan-PI_binary64_14177 tan-PI/3_binary64_14176 tan-PI/4_binary64_14175 tan-PI/6_binary64_14174 cos-+PI/2_binary64_14173 cos-+PI_binary64_14172 cos-PI_binary64_14171 cos-PI/2_binary64_14170 cos-PI/3_binary64_14169 cos-PI/4_binary64_14168 cos-PI/6_binary64_14167 sin-+PI/2_binary64_14166 sin-+PI_binary64_14165 sin-PI_binary64_14164 sin-PI/2_binary64_14163 sin-PI/3_binary64_14162 sin-PI/4_binary64_14161 sin-PI/6_binary64_14160 sub-1-sin_binary64_14159 sub-1-cos_binary64_14158 -1-add-sin_binary64_14157 -1-add-cos_binary64_14156 1-sub-sin_binary64_14155 1-sub-cos_binary64_14154 cos-sin-sum_binary64_14153 log-E_binary64_14149 log-pow_binary64_14148 log-rec_binary64_14147 log-div_binary64_14146 log-prod_binary64_14145 pow-base-0_binary64_14143 unpow1/3_binary64_14126 unpow3_binary64_14125 unpow2_binary64_14124 unpow1/2_binary64_14123 pow-plus_binary64_14122 exp-to-pow_binary64_14121 pow-base-1_binary64_14119 unpow0_binary64_14118 unpow-1_binary64_14116 exp-lft-cube_binary64_14115 exp-cbrt_binary64_14113 exp-sqrt_binary64_14112 div-exp_binary64_14110 rec-exp_binary64_14109 exp-neg_binary64_14106 e-exp-1_binary64_14104 1-exp_binary64_14103 exp-1-e_binary64_14102 exp-0_binary64_14101 rem-log-exp_binary64_14100 rem-exp-log_binary64_14099 cube-unmult_binary64_14096 cube-mult_binary64_14089 cube-div_binary64_14088 cube-prod_binary64_14087 cube-neg_binary64_14086 rem-3cbrt-rft_binary64_14085 rem-3cbrt-lft_binary64_14084 rem-cbrt-cube_binary64_14083 rem-cube-cbrt_binary64_14082 sqr-abs_binary64_14074 sqr-neg_binary64_14073 rem-sqrt-square_binary64_14072 rem-square-sqrt_binary64_14071 times-frac_binary64_14065 mul-1-neg_binary64_14051 /-rgt-identity_binary64_14050 *-rgt-identity_binary64_14049 *-lft-identity_binary64_14048 sub0-neg_binary64_14046 --rgt-identity_binary64_14045 +-rgt-identity_binary64_14044 +-lft-identity_binary64_14043 mul0-rgt_binary64_14042 mul0-lft_binary64_14041 div0_binary64_14040 *-inverses_binary64_14039 +-inverses_binary64_14038 lft-mult-inverse_binary64_14037 rgt-mult-inverse_binary64_14036 remove-double-div_binary64_14035 difference-of-sqr--1_binary64_14030 difference-of-sqr-1_binary64_14029 difference-of-squares_binary64_14028 unswap-sqr_binary64_14027 swap-sqr_binary64_14026 cancel-sign-sub_binary64_14024 distribute-frac-neg_binary64_14022 distribute-neg-out_binary64_14021 distribute-rgt1-in_binary64_14015 distribute-lft1-in_binary64_14014 distribute-rgt-out--_binary64_14013 distribute-lft-out--_binary64_14011 distribute-lft-out_binary64_14010 count-2_binary64_14007 associate-/l/_binary64_14006 associate--r-_binary64_13998 associate--l-_binary64_13997 associate-+r+_binary64_13991
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02631034
1597968
21702968
34907968
45523968
077
177
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
3.1%96.5%0.3%9
4.7%95%0.3%10
4.7%95%0.3%11
5.1%82.1%12.8%12
6.2%74.7%19%13
6.4%74.5%19%14
Compiler

Compiled 34 to 30 computations (11.8% saved)

sample71.0ms (0.5%)

Algorithm
intervals
Results
30.0ms256×body128valid
14.0ms147×body128nan
Compiler

Compiled 67 to 66 computations (1.5% saved)

simplify51.0ms (0.4%)

Algorithm
egg-herbie
Rules
630×exp-prod_binary64_14111
433×exp-sum_binary64_14105
328×exp-diff_binary64_14107
321×distribute-rgt-in_binary64_14009
303×distribute-lft-in_binary64_14008
283×unsub-neg_binary64_14053
213×cancel-sign-sub-inv_binary64_14025
209×distribute-neg-in_binary64_14020
179×distribute-rgt-neg-out_binary64_14019
176×exp-neg_binary64_14106
164×associate-/l*_binary64_14004
152×distribute-lft-neg-out_binary64_14018
130×div-sub_binary64_14064 sub-neg_binary64_14052
117×associate-*l*_binary64_14000
112×associate--r+_binary64_13995
111×associate-+r+_binary64_13991
107×associate-*r*_binary64_13999
99×associate-+l+_binary64_13992
98×times-frac_binary64_14065
87×*-commutative_binary64_13990
72×neg-sub0_binary64_14054
57×distribute-neg-frac_binary64_14023
53×exp-lft-sqr_binary64_14114 distribute-rgt-neg-in_binary64_14017
43×associate-*l/_binary64_14002
42×associate-*r/_binary64_14001
39×neg-mul-1_binary64_14055 distribute-neg-out_binary64_14021
37×sqr-pow_binary64_14031
36×distribute-lft-neg-in_binary64_14016 associate-/l/_binary64_14006
31×prod-exp_binary64_14108
26×+-commutative_binary64_13989
20×exp-cbrt_binary64_14113
19×associate-/r/_binary64_14005
17×associate-+l-_binary64_13994
16×div-exp_binary64_14110 mul0-rgt_binary64_14042 mul0-lft_binary64_14041
15×distribute-rgt-out_binary64_14012
14×remove-double-neg_binary64_14047
11×distribute-lft-out_binary64_14010 associate-+r-_binary64_13993
10×distribute-frac-neg_binary64_14022 associate-/r*_binary64_14003 associate--l+_binary64_13996
distribute-rgt-out--_binary64_14013
sub0-neg_binary64_14046 swap-sqr_binary64_14026
*-rgt-identity_binary64_14049 +-rgt-identity_binary64_14044
pow-sqr_binary64_14032
associate--r-_binary64_13998
unpow1_binary64_14117
unswap-sqr_binary64_14027
unpow3_binary64_14125 unpow1/2_binary64_14123 1-exp_binary64_14103 cube-unmult_binary64_14096 mul-1-neg_binary64_14051 *-lft-identity_binary64_14048 --rgt-identity_binary64_14045 count-2_binary64_14007
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_14322 erf-erfc_binary64_14321 erf-odd_binary64_14320 if-if-and-not_binary64_14319 if-if-and_binary64_14318 if-if-or-not_binary64_14317 if-if-or_binary64_14316 if-not_binary64_14315 if-same_binary64_14314 if-false_binary64_14313 if-true_binary64_14312 not-gte_binary64_14311 not-lte_binary64_14310 not-gt_binary64_14309 not-lt_binary64_14308 gte-same_binary64_14307 lte-same_binary64_14306 gt-same_binary64_14305 lt-same_binary64_14304 sinh---cosh_binary64_14251 sinh-+-cosh_binary64_14250 sinh-cosh_binary64_14249 tanh-def-c_binary64_14248 tanh-def-b_binary64_14247 tanh-def-a_binary64_14246 cosh-def_binary64_14245 sinh-def_binary64_14244 tan-neg_binary64_14191 cos-neg_binary64_14190 sin-neg_binary64_14189 tan-0_binary64_14188 cos-0_binary64_14187 sin-0_binary64_14186 hang-m-tan_binary64_14185 hang-p-tan_binary64_14184 hang-m0-tan_binary64_14183 hang-p0-tan_binary64_14182 hang-0m-tan_binary64_14181 hang-0p-tan_binary64_14180 tan-+PI/2_binary64_14179 tan-+PI_binary64_14178 tan-PI_binary64_14177 tan-PI/3_binary64_14176 tan-PI/4_binary64_14175 tan-PI/6_binary64_14174 cos-+PI/2_binary64_14173 cos-+PI_binary64_14172 cos-PI_binary64_14171 cos-PI/2_binary64_14170 cos-PI/3_binary64_14169 cos-PI/4_binary64_14168 cos-PI/6_binary64_14167 sin-+PI/2_binary64_14166 sin-+PI_binary64_14165 sin-PI_binary64_14164 sin-PI/2_binary64_14163 sin-PI/3_binary64_14162 sin-PI/4_binary64_14161 sin-PI/6_binary64_14160 sub-1-sin_binary64_14159 sub-1-cos_binary64_14158 -1-add-sin_binary64_14157 -1-add-cos_binary64_14156 1-sub-sin_binary64_14155 1-sub-cos_binary64_14154 cos-sin-sum_binary64_14153 log-E_binary64_14149 log-pow_binary64_14148 log-rec_binary64_14147 log-div_binary64_14146 log-prod_binary64_14145 pow-base-0_binary64_14143 unpow1/3_binary64_14126 unpow2_binary64_14124 pow-plus_binary64_14122 exp-to-pow_binary64_14121 pow-base-1_binary64_14119 unpow0_binary64_14118 unpow-1_binary64_14116 exp-lft-cube_binary64_14115 exp-sqrt_binary64_14112 rec-exp_binary64_14109 e-exp-1_binary64_14104 exp-1-e_binary64_14102 exp-0_binary64_14101 rem-log-exp_binary64_14100 rem-exp-log_binary64_14099 cube-mult_binary64_14089 cube-div_binary64_14088 cube-prod_binary64_14087 cube-neg_binary64_14086 rem-3cbrt-rft_binary64_14085 rem-3cbrt-lft_binary64_14084 rem-cbrt-cube_binary64_14083 rem-cube-cbrt_binary64_14082 sqr-abs_binary64_14074 sqr-neg_binary64_14073 rem-sqrt-square_binary64_14072 rem-square-sqrt_binary64_14071 /-rgt-identity_binary64_14050 +-lft-identity_binary64_14043 div0_binary64_14040 *-inverses_binary64_14039 +-inverses_binary64_14038 lft-mult-inverse_binary64_14037 rgt-mult-inverse_binary64_14036 remove-double-div_binary64_14035 difference-of-sqr--1_binary64_14030 difference-of-sqr-1_binary64_14029 difference-of-squares_binary64_14028 cancel-sign-sub_binary64_14024 distribute-rgt1-in_binary64_14015 distribute-lft1-in_binary64_14014 distribute-lft-out--_binary64_14011 associate--l-_binary64_13997
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03047
15544
213444
349044
4192444
5412644
6505344

prune6.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
3.0b
Counts
2 → 1
Compiler

Compiled 58 to 50 computations (13.8% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 z (sqrt.f64 (+.f64 t a)))
0.4b
(/.f64 2/3 t)
2.4b
(-.f64 (/.f64 (*.f64 z (sqrt.f64 (+.f64 t a))) t) (*.f64 (-.f64 b c) (-.f64 (+.f64 a 5/6) (/.f64 2/3 t))))
4.5b
(/.f64 (*.f64 z (sqrt.f64 (+.f64 t a))) t)

rewrite326.0ms (2.4%)

Algorithm
rewrite-expression-head
Error
0.5b
Rules
35×add-sqr-sqrt_binary64_14081
33×*-un-lft-identity_binary64_14059
31×add-cube-cbrt_binary64_14094
30×times-frac_binary64_14065 associate--r+_binary64_13995
27×cancel-sign-sub-inv_binary64_14025
20×frac-sub_binary64_14068
15×distribute-rgt-in_binary64_14009 distribute-lft-in_binary64_14008
13×add-exp-log_binary64_14097 add-cbrt-cube_binary64_14095
flip3--_binary64_14063 flip--_binary64_14034
associate-*r/_binary64_14001 frac-times_binary64_14069
associate-*r*_binary64_13999
pow1_binary64_14120 add-log-exp_binary64_14098 associate-/r*_binary64_14003
flip3-+_binary64_14062 flip-+_binary64_14033 sqrt-prod_binary64_14075
div-inv_binary64_14056 sqrt-div_binary64_14076 associate-/l*_binary64_14004
div-exp_binary64_14110 cbrt-undiv_binary64_14093 sub-neg_binary64_14052 associate-*l*_binary64_14000
prod-exp_binary64_14108 cbrt-unprod_binary64_14092 frac-2neg_binary64_14070 clear-num_binary64_14058 associate-/l/_binary64_14006 associate-*l/_binary64_14002 associate--l+_binary64_13996 unswap-sqr_binary64_14027
diff-log_binary64_14151 pow-prod-down_binary64_14130 distribute-lft-out_binary64_14010 *-commutative_binary64_13990
Counts
4 → 131
Calls

4 calls:

19.0ms
(-.f64 (/.f64 (*.f64 z (sqrt.f64 (+.f64 t a))) t) (*.f64 (-.f64 b c) (-.f64 (+.f64 a 5/6) (/.f64 2/3 t))))
12.0ms
(*.f64 z (sqrt.f64 (+.f64 t a)))
8.0ms
(/.f64 (*.f64 z (sqrt.f64 (+.f64 t a))) t)
4.0ms
(/.f64 2/3 t)
Compiler

Compiled 5521 to 2678 computations (51.5% saved)

series1.5s (10.6%)

Error
0.0b
Counts
4 → 53
Calls

4 calls:

1.0s
(-.f64 (/.f64 (*.f64 z (sqrt.f64 (+.f64 t a))) t) (*.f64 (-.f64 b c) (-.f64 (+.f64 a 5/6) (/.f64 2/3 t))))
189.0ms
(/.f64 (*.f64 z (sqrt.f64 (+.f64 t a))) t)
140.0ms
(*.f64 z (sqrt.f64 (+.f64 t a)))
24.0ms
(/.f64 2/3 t)
Compiler

Compiled 5014 to 3646 computations (27.3% saved)

simplify141.0ms (1%)

Algorithm
egg-herbie
Rules
675×times-frac_binary64_14065
361×associate-*r*_binary64_13999
340×associate-*l*_binary64_14000
288×distribute-rgt-in_binary64_14009
284×distribute-lft-in_binary64_14008
275×*-commutative_binary64_13990
142×+-commutative_binary64_13989
120×cancel-sign-sub-inv_binary64_14025
107×associate-*l/_binary64_14002
91×sub-neg_binary64_14052
87×distribute-rgt-neg-in_binary64_14017
85×associate--l+_binary64_13996 associate-+l+_binary64_13992
83×associate-/l*_binary64_14004 associate--r+_binary64_13995
70×associate-*r/_binary64_14001
65×associate-+r+_binary64_13991
59×distribute-lft-neg-in_binary64_14016
51×neg-sub0_binary64_14054
48×neg-mul-1_binary64_14055
33×associate-/r*_binary64_14003
29×associate-/l/_binary64_14006
27×distribute-lft-neg-out_binary64_14018
26×distribute-neg-in_binary64_14020
25×log-div_binary64_14146 cube-div_binary64_14088 sqr-pow_binary64_14031
21×exp-prod_binary64_14111 exp-sum_binary64_14105
15×unpow3_binary64_14125
14×cube-mult_binary64_14089 cube-prod_binary64_14087 associate-/r/_binary64_14005
11×log-prod_binary64_14145
10×swap-sqr_binary64_14026 distribute-neg-frac_binary64_14023
distribute-rgt-out_binary64_14012
difference-of-squares_binary64_14028
log-rec_binary64_14147
exp-diff_binary64_14107 distribute-rgt-out--_binary64_14013
mul-1-neg_binary64_14051 /-rgt-identity_binary64_14050
cube-unmult_binary64_14096 rem-sqrt-square_binary64_14072 associate-+r-_binary64_13993
associate-+l-_binary64_13994
unpow2_binary64_14124 unpow1/2_binary64_14123 unpow1_binary64_14117 div-exp_binary64_14110 1-exp_binary64_14103 exp-1-e_binary64_14102 rem-square-sqrt_binary64_14071 div-sub_binary64_14064 *-rgt-identity_binary64_14049 associate--r-_binary64_13998
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_14322 erf-erfc_binary64_14321 erf-odd_binary64_14320 if-if-and-not_binary64_14319 if-if-and_binary64_14318 if-if-or-not_binary64_14317 if-if-or_binary64_14316 if-not_binary64_14315 if-same_binary64_14314 if-false_binary64_14313 if-true_binary64_14312 not-gte_binary64_14311 not-lte_binary64_14310 not-gt_binary64_14309 not-lt_binary64_14308 gte-same_binary64_14307 lte-same_binary64_14306 gt-same_binary64_14305 lt-same_binary64_14304 sinh---cosh_binary64_14251 sinh-+-cosh_binary64_14250 sinh-cosh_binary64_14249 tanh-def-c_binary64_14248 tanh-def-b_binary64_14247 tanh-def-a_binary64_14246 cosh-def_binary64_14245 sinh-def_binary64_14244 tan-neg_binary64_14191 cos-neg_binary64_14190 sin-neg_binary64_14189 tan-0_binary64_14188 cos-0_binary64_14187 sin-0_binary64_14186 hang-m-tan_binary64_14185 hang-p-tan_binary64_14184 hang-m0-tan_binary64_14183 hang-p0-tan_binary64_14182 hang-0m-tan_binary64_14181 hang-0p-tan_binary64_14180 tan-+PI/2_binary64_14179 tan-+PI_binary64_14178 tan-PI_binary64_14177 tan-PI/3_binary64_14176 tan-PI/4_binary64_14175 tan-PI/6_binary64_14174 cos-+PI/2_binary64_14173 cos-+PI_binary64_14172 cos-PI_binary64_14171 cos-PI/2_binary64_14170 cos-PI/3_binary64_14169 cos-PI/4_binary64_14168 cos-PI/6_binary64_14167 sin-+PI/2_binary64_14166 sin-+PI_binary64_14165 sin-PI_binary64_14164 sin-PI/2_binary64_14163 sin-PI/3_binary64_14162 sin-PI/4_binary64_14161 sin-PI/6_binary64_14160 sub-1-sin_binary64_14159 sub-1-cos_binary64_14158 -1-add-sin_binary64_14157 -1-add-cos_binary64_14156 1-sub-sin_binary64_14155 1-sub-cos_binary64_14154 cos-sin-sum_binary64_14153 log-E_binary64_14149 log-pow_binary64_14148 pow-base-0_binary64_14143 unpow1/3_binary64_14126 pow-plus_binary64_14122 exp-to-pow_binary64_14121 pow-base-1_binary64_14119 unpow0_binary64_14118 unpow-1_binary64_14116 exp-lft-cube_binary64_14115 exp-lft-sqr_binary64_14114 exp-cbrt_binary64_14113 exp-sqrt_binary64_14112 rec-exp_binary64_14109 prod-exp_binary64_14108 exp-neg_binary64_14106 e-exp-1_binary64_14104 exp-0_binary64_14101 rem-log-exp_binary64_14100 rem-exp-log_binary64_14099 cube-neg_binary64_14086 rem-3cbrt-rft_binary64_14085 rem-3cbrt-lft_binary64_14084 rem-cbrt-cube_binary64_14083 rem-cube-cbrt_binary64_14082 sqr-abs_binary64_14074 sqr-neg_binary64_14073 unsub-neg_binary64_14053 *-lft-identity_binary64_14048 remove-double-neg_binary64_14047 sub0-neg_binary64_14046 --rgt-identity_binary64_14045 +-rgt-identity_binary64_14044 +-lft-identity_binary64_14043 mul0-rgt_binary64_14042 mul0-lft_binary64_14041 div0_binary64_14040 *-inverses_binary64_14039 +-inverses_binary64_14038 lft-mult-inverse_binary64_14037 rgt-mult-inverse_binary64_14036 remove-double-div_binary64_14035 pow-sqr_binary64_14032 difference-of-sqr--1_binary64_14030 difference-of-sqr-1_binary64_14029 unswap-sqr_binary64_14027 cancel-sign-sub_binary64_14024 distribute-frac-neg_binary64_14022 distribute-neg-out_binary64_14021 distribute-rgt-neg-out_binary64_14019 distribute-rgt1-in_binary64_14015 distribute-lft1-in_binary64_14014 distribute-lft-out--_binary64_14011 distribute-lft-out_binary64_14010 count-2_binary64_14007 associate--l-_binary64_13997
Counts
184 → 126
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03944760
111534582
246234582
356784582

prune243.0ms (1.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1242126
Fresh000
Picked011
Done000
Total1243127
Error
0.0b
Counts
127 → 3
Compiler

Compiled 5043 to 2587 computations (48.7% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 (-.f64 b c) (-.f64 (+.f64 a 5/6) (/.f64 2/3 t)))
0.1b
(sqrt.f64 (/.f64 1 t))
0.2b
(*.f64 z (sqrt.f64 (/.f64 1 t)))
0.4b
(/.f64 2/3 t)

rewrite366.0ms (2.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
66×add-sqr-sqrt_binary64_14081
53×*-un-lft-identity_binary64_14059
50×times-frac_binary64_14065
44×add-cube-cbrt_binary64_14094
29×sqrt-prod_binary64_14075
26×cancel-sign-sub-inv_binary64_14025
23×associate-*r*_binary64_13999
15×distribute-rgt-in_binary64_14009 distribute-lft-in_binary64_14008
10×pow1_binary64_14120 add-exp-log_binary64_14097 add-cbrt-cube_binary64_14095
associate-*l*_binary64_14000 flip3--_binary64_14063 frac-times_binary64_14069 flip--_binary64_14034
frac-sub_binary64_14068
div-inv_binary64_14056 unswap-sqr_binary64_14027 associate-*r/_binary64_14001
add-log-exp_binary64_14098
associate-/l*_binary64_14004 associate-/r*_binary64_14003 sqrt-pow1_binary64_14077 rem-sqrt-square_binary64_14072 flip3-+_binary64_14062 flip-+_binary64_14033 difference-of-squares_binary64_14028 distribute-lft-out--_binary64_14011
pow-prod-down_binary64_14130 prod-exp_binary64_14108 cbrt-unprod_binary64_14092 sqrt-div_binary64_14076 *-commutative_binary64_13990 sub-neg_binary64_14052 associate--l+_binary64_13996 associate-*l/_binary64_14002
div-exp_binary64_14110 cbrt-undiv_binary64_14093 frac-2neg_binary64_14070 clear-num_binary64_14058 pow1/2_binary64_14139 inv-pow_binary64_14144 pow-flip_binary64_14133 distribute-lft-out_binary64_14010
Counts
4 → 158
Calls

4 calls:

20.0ms
(*.f64 (-.f64 b c) (-.f64 (+.f64 a 5/6) (/.f64 2/3 t)))
10.0ms
(*.f64 z (sqrt.f64 (/.f64 1 t)))
3.0ms
(sqrt.f64 (/.f64 1 t))
3.0ms
(/.f64 2/3 t)
Compiler

Compiled 5788 to 3696 computations (36.1% saved)

series721.0ms (5.2%)

Error
0.0b
Counts
4 → 36
Calls

4 calls:

502.0ms
(*.f64 (-.f64 b c) (-.f64 (+.f64 a 5/6) (/.f64 2/3 t)))
108.0ms
(*.f64 z (sqrt.f64 (/.f64 1 t)))
29.0ms
(/.f64 2/3 t)
22.0ms
(sqrt.f64 (/.f64 1 t))
Compiler

Compiled 3160 to 2451 computations (22.4% saved)

simplify151.0ms (1.1%)

Algorithm
egg-herbie
Rules
775×times-frac_binary64_14065
284×associate-/l*_binary64_14004
250×associate-*l*_binary64_14000
230×*-commutative_binary64_13990
224×associate-*r*_binary64_13999
214×distribute-lft-neg-out_binary64_14018
211×distribute-rgt-neg-out_binary64_14019
194×distribute-rgt-in_binary64_14009
187×distribute-lft-in_binary64_14008
155×exp-prod_binary64_14111
147×cancel-sign-sub-inv_binary64_14025
126×sub-neg_binary64_14052
110×neg-sub0_binary64_14054
99×distribute-rgt-neg-in_binary64_14017
91×neg-mul-1_binary64_14055
86×associate-*l/_binary64_14002
80×associate-/l/_binary64_14006
79×associate-*r/_binary64_14001
66×distribute-neg-frac_binary64_14023 distribute-lft-neg-in_binary64_14016
57×*-lft-identity_binary64_14048
55×*-rgt-identity_binary64_14049
50×+-commutative_binary64_13989
45×associate-/r/_binary64_14005
43×log-prod_binary64_14145
41×exp-sum_binary64_14105 distribute-neg-in_binary64_14020
40×cube-prod_binary64_14087
36×sqr-pow_binary64_14031
29×associate--l+_binary64_13996
26×div-sub_binary64_14064
25×associate--r+_binary64_13995
24×exp-diff_binary64_14107 exp-neg_binary64_14106 distribute-frac-neg_binary64_14022
19×unsub-neg_binary64_14053 associate-+l+_binary64_13992
16×cube-div_binary64_14088
14×log-div_binary64_14146 swap-sqr_binary64_14026 associate-+r+_binary64_13991
13×distribute-rgt-out_binary64_14012 associate-/r*_binary64_14003
12×cube-unmult_binary64_14096 mul-1-neg_binary64_14051
11×unpow3_binary64_14125
10×unswap-sqr_binary64_14027
cube-mult_binary64_14089
/-rgt-identity_binary64_14050 difference-of-squares_binary64_14028
rem-sqrt-square_binary64_14072
rem-square-sqrt_binary64_14071
distribute-lft-out_binary64_14010
unpow1/2_binary64_14123 rem-3cbrt-rft_binary64_14085 rem-3cbrt-lft_binary64_14084 div0_binary64_14040 pow-sqr_binary64_14032 associate-+r-_binary64_13993
log-pow_binary64_14148 log-rec_binary64_14147 unpow1/3_binary64_14126 1-exp_binary64_14103 exp-1-e_binary64_14102 +-rgt-identity_binary64_14044 distribute-rgt-out--_binary64_14013 associate-+l-_binary64_13994
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_14322 erf-erfc_binary64_14321 erf-odd_binary64_14320 if-if-and-not_binary64_14319 if-if-and_binary64_14318 if-if-or-not_binary64_14317 if-if-or_binary64_14316 if-not_binary64_14315 if-same_binary64_14314 if-false_binary64_14313 if-true_binary64_14312 not-gte_binary64_14311 not-lte_binary64_14310 not-gt_binary64_14309 not-lt_binary64_14308 gte-same_binary64_14307 lte-same_binary64_14306 gt-same_binary64_14305 lt-same_binary64_14304 sinh---cosh_binary64_14251 sinh-+-cosh_binary64_14250 sinh-cosh_binary64_14249 tanh-def-c_binary64_14248 tanh-def-b_binary64_14247 tanh-def-a_binary64_14246 cosh-def_binary64_14245 sinh-def_binary64_14244 tan-neg_binary64_14191 cos-neg_binary64_14190 sin-neg_binary64_14189 tan-0_binary64_14188 cos-0_binary64_14187 sin-0_binary64_14186 hang-m-tan_binary64_14185 hang-p-tan_binary64_14184 hang-m0-tan_binary64_14183 hang-p0-tan_binary64_14182 hang-0m-tan_binary64_14181 hang-0p-tan_binary64_14180 tan-+PI/2_binary64_14179 tan-+PI_binary64_14178 tan-PI_binary64_14177 tan-PI/3_binary64_14176 tan-PI/4_binary64_14175 tan-PI/6_binary64_14174 cos-+PI/2_binary64_14173 cos-+PI_binary64_14172 cos-PI_binary64_14171 cos-PI/2_binary64_14170 cos-PI/3_binary64_14169 cos-PI/4_binary64_14168 cos-PI/6_binary64_14167 sin-+PI/2_binary64_14166 sin-+PI_binary64_14165 sin-PI_binary64_14164 sin-PI/2_binary64_14163 sin-PI/3_binary64_14162 sin-PI/4_binary64_14161 sin-PI/6_binary64_14160 sub-1-sin_binary64_14159 sub-1-cos_binary64_14158 -1-add-sin_binary64_14157 -1-add-cos_binary64_14156 1-sub-sin_binary64_14155 1-sub-cos_binary64_14154 cos-sin-sum_binary64_14153 log-E_binary64_14149 pow-base-0_binary64_14143 unpow2_binary64_14124 pow-plus_binary64_14122 exp-to-pow_binary64_14121 pow-base-1_binary64_14119 unpow0_binary64_14118 unpow1_binary64_14117 unpow-1_binary64_14116 exp-lft-cube_binary64_14115 exp-lft-sqr_binary64_14114 exp-cbrt_binary64_14113 exp-sqrt_binary64_14112 div-exp_binary64_14110 rec-exp_binary64_14109 prod-exp_binary64_14108 e-exp-1_binary64_14104 exp-0_binary64_14101 rem-log-exp_binary64_14100 rem-exp-log_binary64_14099 cube-neg_binary64_14086 rem-cbrt-cube_binary64_14083 rem-cube-cbrt_binary64_14082 sqr-abs_binary64_14074 sqr-neg_binary64_14073 remove-double-neg_binary64_14047 sub0-neg_binary64_14046 --rgt-identity_binary64_14045 +-lft-identity_binary64_14043 mul0-rgt_binary64_14042 mul0-lft_binary64_14041 *-inverses_binary64_14039 +-inverses_binary64_14038 lft-mult-inverse_binary64_14037 rgt-mult-inverse_binary64_14036 remove-double-div_binary64_14035 difference-of-sqr--1_binary64_14030 difference-of-sqr-1_binary64_14029 cancel-sign-sub_binary64_14024 distribute-neg-out_binary64_14021 distribute-rgt1-in_binary64_14015 distribute-lft1-in_binary64_14014 distribute-lft-out--_binary64_14011 count-2_binary64_14007 associate--r-_binary64_13998 associate--l-_binary64_13997
Counts
194 → 131
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03183363
17713201
230503108
345573108
458073108

prune250.0ms (1.8%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1310131
Fresh011
Picked011
Done011
Total1313134
Error
0.0b
Counts
134 → 3
Compiler

Compiled 4356 to 2681 computations (38.5% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 y (pow.f64 (exp.f64 2) (/.f64 (+.f64 (*.f64 z (sqrt.f64 a)) (*.f64 2/3 (-.f64 b c))) t)))
0.2b
(*.f64 z (sqrt.f64 a))
0.3b
(*.f64 2/3 (-.f64 b c))
1.5b
(/.f64 (+.f64 (*.f64 z (sqrt.f64 a)) (*.f64 2/3 (-.f64 b c))) t)

rewrite202.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
36×add-sqr-sqrt_binary64_14081
26×*-un-lft-identity_binary64_14059
22×add-cube-cbrt_binary64_14094
19×associate-*r*_binary64_13999
14×add-exp-log_binary64_14097
12×add-cbrt-cube_binary64_14095
times-frac_binary64_14065 associate-*l*_binary64_14000
pow1_binary64_14120
unswap-sqr_binary64_14027
cancel-sign-sub-inv_binary64_14025 unpow-prod-down_binary64_14138
prod-exp_binary64_14108
add-log-exp_binary64_14098 distribute-rgt-in_binary64_14009 distribute-lft-in_binary64_14008 sqrt-prod_binary64_14075
associate-/l*_binary64_14004 associate-/r*_binary64_14003 cbrt-unprod_binary64_14092 *-commutative_binary64_13990
associate-/l/_binary64_14006 pow-prod-down_binary64_14130 sub-neg_binary64_14052 associate-*r/_binary64_14001 exp-lft-sqr_binary64_14114 sqr-pow_binary64_14031
div-exp_binary64_14110 cbrt-undiv_binary64_14093 frac-2neg_binary64_14070 clear-num_binary64_14058 div-inv_binary64_14056 flip3-+_binary64_14062 flip-+_binary64_14033 flip3--_binary64_14063 flip--_binary64_14034 difference-of-squares_binary64_14028 distribute-lft-out--_binary64_14011 pow-to-exp_binary64_14128 pow-exp_binary64_14127
Counts
4 → 108
Calls

4 calls:

10.0ms
(*.f64 2/3 (-.f64 b c))
8.0ms
(*.f64 y (pow.f64 (exp.f64 2) (/.f64 (+.f64 (*.f64 z (sqrt.f64 a)) (*.f64 2/3 (-.f64 b c))) t)))
8.0ms
(/.f64 (+.f64 (*.f64 z (sqrt.f64 a)) (*.f64 2/3 (-.f64 b c))) t)
6.0ms
(*.f64 z (sqrt.f64 a))
Compiler

Compiled 3355 to 1666 computations (50.3% saved)

series2.6s (18.7%)

Error
0.0b
Counts
4 → 73
Calls

4 calls:

1.7s
(*.f64 y (pow.f64 (exp.f64 2) (/.f64 (+.f64 (*.f64 z (sqrt.f64 a)) (*.f64 2/3 (-.f64 b c))) t)))
591.0ms
(/.f64 (+.f64 (*.f64 z (sqrt.f64 a)) (*.f64 2/3 (-.f64 b c))) t)
107.0ms
(*.f64 2/3 (-.f64 b c))
71.0ms
(*.f64 z (sqrt.f64 a))
Compiler

Compiled 7232 to 5649 computations (21.9% saved)

simplify151.0ms (1.1%)

Algorithm
egg-herbie
Rules
492×associate-*r*_binary64_13999
383×associate-*l*_binary64_14000
309×*-commutative_binary64_13990
293×times-frac_binary64_14065
205×associate-+r+_binary64_13991
193×associate-/l*_binary64_14004
166×associate-/r*_binary64_14003
159×+-commutative_binary64_13989
128×associate-+l+_binary64_13992
94×div-sub_binary64_14064
79×associate-*r/_binary64_14001
74×associate-*l/_binary64_14002
63×distribute-rgt-in_binary64_14009
57×exp-prod_binary64_14111 distribute-lft-in_binary64_14008
52×cancel-sign-sub-inv_binary64_14025
46×sub-neg_binary64_14052
45×associate--l+_binary64_13996
38×associate-/r/_binary64_14005
36×sqr-pow_binary64_14031
35×associate--r+_binary64_13995
24×log-prod_binary64_14145
23×cube-prod_binary64_14087
22×neg-mul-1_binary64_14055 neg-sub0_binary64_14054
19×distribute-rgt-neg-in_binary64_14017 associate-/l/_binary64_14006
17×distribute-neg-in_binary64_14020
16×distribute-lft-neg-in_binary64_14016
12×cube-unmult_binary64_14096
10×rem-sqrt-square_binary64_14072 swap-sqr_binary64_14026
log-pow_binary64_14148 distribute-lft-neg-out_binary64_14018
unpow3_binary64_14125 exp-sum_binary64_14105 cube-mult_binary64_14089 pow-sqr_binary64_14032 distribute-rgt-neg-out_binary64_14019
unpow2_binary64_14124 exp-diff_binary64_14107 unswap-sqr_binary64_14027
unpow1/2_binary64_14123 unpow1_binary64_14117 distribute-neg-frac_binary64_14023
log-div_binary64_14146 pow-base-1_binary64_14119 /-rgt-identity_binary64_14050 distribute-rgt-out--_binary64_14013
prod-exp_binary64_14108 exp-neg_binary64_14106 rem-square-sqrt_binary64_14071 mul-1-neg_binary64_14051 *-rgt-identity_binary64_14049 difference-of-squares_binary64_14028 associate--r-_binary64_13998 associate-+l-_binary64_13994 associate-+r-_binary64_13993
pow-plus_binary64_14122 exp-lft-sqr_binary64_14114 1-exp_binary64_14103 exp-1-e_binary64_14102 rem-log-exp_binary64_14100 cube-div_binary64_14088 rem-3cbrt-lft_binary64_14084 unsub-neg_binary64_14053 distribute-rgt-out_binary64_14012 distribute-lft-out--_binary64_14011 associate--l-_binary64_13997
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_14322 erf-erfc_binary64_14321 erf-odd_binary64_14320 if-if-and-not_binary64_14319 if-if-and_binary64_14318 if-if-or-not_binary64_14317 if-if-or_binary64_14316 if-not_binary64_14315 if-same_binary64_14314 if-false_binary64_14313 if-true_binary64_14312 not-gte_binary64_14311 not-lte_binary64_14310 not-gt_binary64_14309 not-lt_binary64_14308 gte-same_binary64_14307 lte-same_binary64_14306 gt-same_binary64_14305 lt-same_binary64_14304 sinh---cosh_binary64_14251 sinh-+-cosh_binary64_14250 sinh-cosh_binary64_14249 tanh-def-c_binary64_14248 tanh-def-b_binary64_14247 tanh-def-a_binary64_14246 cosh-def_binary64_14245 sinh-def_binary64_14244 tan-neg_binary64_14191 cos-neg_binary64_14190 sin-neg_binary64_14189 tan-0_binary64_14188 cos-0_binary64_14187 sin-0_binary64_14186 hang-m-tan_binary64_14185 hang-p-tan_binary64_14184 hang-m0-tan_binary64_14183 hang-p0-tan_binary64_14182 hang-0m-tan_binary64_14181 hang-0p-tan_binary64_14180 tan-+PI/2_binary64_14179 tan-+PI_binary64_14178 tan-PI_binary64_14177 tan-PI/3_binary64_14176 tan-PI/4_binary64_14175 tan-PI/6_binary64_14174 cos-+PI/2_binary64_14173 cos-+PI_binary64_14172 cos-PI_binary64_14171 cos-PI/2_binary64_14170 cos-PI/3_binary64_14169 cos-PI/4_binary64_14168 cos-PI/6_binary64_14167 sin-+PI/2_binary64_14166 sin-+PI_binary64_14165 sin-PI_binary64_14164 sin-PI/2_binary64_14163 sin-PI/3_binary64_14162 sin-PI/4_binary64_14161 sin-PI/6_binary64_14160 sub-1-sin_binary64_14159 sub-1-cos_binary64_14158 -1-add-sin_binary64_14157 -1-add-cos_binary64_14156 1-sub-sin_binary64_14155 1-sub-cos_binary64_14154 cos-sin-sum_binary64_14153 log-E_binary64_14149 log-rec_binary64_14147 pow-base-0_binary64_14143 unpow1/3_binary64_14126 exp-to-pow_binary64_14121 unpow0_binary64_14118 unpow-1_binary64_14116 exp-lft-cube_binary64_14115 exp-cbrt_binary64_14113 exp-sqrt_binary64_14112 div-exp_binary64_14110 rec-exp_binary64_14109 e-exp-1_binary64_14104 exp-0_binary64_14101 rem-exp-log_binary64_14099 cube-neg_binary64_14086 rem-3cbrt-rft_binary64_14085 rem-cbrt-cube_binary64_14083 rem-cube-cbrt_binary64_14082 sqr-abs_binary64_14074 sqr-neg_binary64_14073 *-lft-identity_binary64_14048 remove-double-neg_binary64_14047 sub0-neg_binary64_14046 --rgt-identity_binary64_14045 +-rgt-identity_binary64_14044 +-lft-identity_binary64_14043 mul0-rgt_binary64_14042 mul0-lft_binary64_14041 div0_binary64_14040 *-inverses_binary64_14039 +-inverses_binary64_14038 lft-mult-inverse_binary64_14037 rgt-mult-inverse_binary64_14036 remove-double-div_binary64_14035 difference-of-sqr--1_binary64_14030 difference-of-sqr-1_binary64_14029 cancel-sign-sub_binary64_14024 distribute-frac-neg_binary64_14022 distribute-neg-out_binary64_14021 distribute-rgt1-in_binary64_14015 distribute-lft1-in_binary64_14014 distribute-lft-out_binary64_14010 count-2_binary64_14007
Counts
181 → 141
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04545160
112004839
247814830
351214830

prune222.0ms (1.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1410141
Fresh000
Picked011
Done022
Total1413144
Error
0.0b
Counts
144 → 3
Compiler

Compiled 4619 to 2277 computations (50.7% saved)

regimes1.6s (11.6%)

Accuracy

Total 1.9b remaining (99.1%)

Threshold costs 0b (0%)

Compiler

Compiled 19312 to 16782 computations (13.1% saved)

bsearch5.0ms (0%)

Compiler

Compiled 24 to 23 computations (4.2% saved)

simplify19.0ms (0.1%)

Algorithm
egg-herbie
Rules
132×unsub-neg_binary64_14053
112×neg-mul-1_binary64_14055 neg-sub0_binary64_14054
77×distribute-neg-out_binary64_14021
60×remove-double-neg_binary64_14047
53×distribute-rgt-neg-out_binary64_14019
46×distribute-rgt-neg-in_binary64_14017
41×distribute-lft-neg-out_binary64_14018
34×distribute-lft-neg-in_binary64_14016
32×distribute-neg-in_binary64_14020
30×sub-neg_binary64_14052 cancel-sign-sub-inv_binary64_14025
29×+-commutative_binary64_13989
28×*-commutative_binary64_13990
cancel-sign-sub_binary64_14024 distribute-neg-frac_binary64_14023
+-rgt-identity_binary64_14044 distribute-frac-neg_binary64_14022
sqr-neg_binary64_14073 --rgt-identity_binary64_14045 +-lft-identity_binary64_14043
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_14319 if-if-and_binary64_14318 if-if-or-not_binary64_14317 if-if-or_binary64_14316 if-not_binary64_14315 if-same_binary64_14314 if-false_binary64_14313 if-true_binary64_14312 tan-0_binary64_14188 cos-0_binary64_14187 sin-0_binary64_14186 unpow1_binary64_14117 e-exp-1_binary64_14104 1-exp_binary64_14103 exp-1-e_binary64_14102 exp-0_binary64_14101 sqr-abs_binary64_14074 mul-1-neg_binary64_14051 /-rgt-identity_binary64_14050 *-rgt-identity_binary64_14049 *-lft-identity_binary64_14048 sub0-neg_binary64_14046
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
048103
174103
2106103
3141103
4196103
5250103
6294103
7481103
8420103
9431103
10433103
11436103
12435103
13400103

end0.0ms (0%)

sample3.3s (23.6%)

Algorithm
intervals
Results
790.0ms8000×body128valid
494.0ms4987×body128nan
Compiler

Compiled 1666 to 1414 computations (15.1% saved)

Profiling

Loading profile data...