Details

Time bar (total: 4.4min)

analyze1.9s (0.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.6%0.4%0
0%99.6%0.4%1
0%99.6%0.4%2
0%99.6%0.4%3
0%99.6%0.4%4
0%99.6%0.4%5
0%99.6%0.4%6
0%99.6%0.4%7
0%99.6%0.4%8
0%99.6%0.4%9
0%99.6%0.4%10
0%99.6%0.4%11
0%99.6%0.4%12
0%99.6%0.4%13
0%99.6%0.4%14
Compiler

Compiled 34 to 27 computations (20.6% saved)

sample45.0ms (0%)

Algorithm
intervals
Results
25.0ms256×body128valid
0.0msbody128invalid
Compiler

Compiled 67 to 61 computations (9% saved)

simplify284.0ms (0.1%)

Algorithm
egg-herbie
Rules
704×unswap-sqr_binary64_1069
375×associate-+l+_binary64_1034
281×distribute-rgt-in_binary64_1051
262×pow-sqr_binary64_1074
233×associate-+r+_binary64_1033
232×sqr-pow_binary64_1073
230×times-frac_binary64_1107
214×distribute-lft-in_binary64_1050
210×associate-/l/_binary64_1048
193×cube-prod_binary64_1129
189×associate-*l*_binary64_1042
179×distribute-rgt-out_binary64_1054
175×exp-prod_binary64_1153
166×*-commutative_binary64_1032
144×associate-/l*_binary64_1046
112×associate-*r*_binary64_1041
85×+-commutative_binary64_1031
77×associate-/r/_binary64_1047
64×distribute-lft-out_binary64_1052
56×pow-plus_binary64_1164 cube-div_binary64_1130
54×associate-*l/_binary64_1044
53×associate-*r/_binary64_1043
51×associate-/r*_binary64_1045
44×unpow3_binary64_1167
39×cube-mult_binary64_1131
29×swap-sqr_binary64_1068
28×*-lft-identity_binary64_1090
27×distribute-rgt1-in_binary64_1057
26×sub-neg_binary64_1094
24×*-rgt-identity_binary64_1091 distribute-rgt-out--_binary64_1055
19×distribute-lft1-in_binary64_1056
15×exp-sum_binary64_1147
14×cube-unmult_binary64_1138
12×div-exp_binary64_1152 prod-exp_binary64_1150 neg-mul-1_binary64_1097 neg-sub0_binary64_1096 cancel-sign-sub-inv_binary64_1067 distribute-lft-neg-in_binary64_1058
11×exp-lft-sqr_binary64_1156
10×+-inverses_binary64_1080
remove-double-div_binary64_1077 distribute-rgt-neg-in_binary64_1059
/-rgt-identity_binary64_1092
exp-sqrt_binary64_1154
unsub-neg_binary64_1095
pow-base-1_binary64_1161 rec-exp_binary64_1151 div-sub_binary64_1106 mul0-lft_binary64_1083 distribute-lft-out--_binary64_1053
exp-diff_binary64_1149 distribute-neg-frac_binary64_1065
--rgt-identity_binary64_1087 count-2_binary64_1049
1-exp_binary64_1145 exp-1-e_binary64_1144 remove-double-neg_binary64_1089 +-rgt-identity_binary64_1086 +-lft-identity_binary64_1085 div0_binary64_1082 *-inverses_binary64_1081 distribute-neg-in_binary64_1062 associate--l+_binary64_1038 associate--r+_binary64_1037
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_1364 erf-erfc_binary64_1363 erf-odd_binary64_1362 if-if-and-not_binary64_1361 if-if-and_binary64_1360 if-if-or-not_binary64_1359 if-if-or_binary64_1358 if-not_binary64_1357 if-same_binary64_1356 if-false_binary64_1355 if-true_binary64_1354 not-gte_binary64_1353 not-lte_binary64_1352 not-gt_binary64_1351 not-lt_binary64_1350 gte-same_binary64_1349 lte-same_binary64_1348 gt-same_binary64_1347 lt-same_binary64_1346 sinh---cosh_binary64_1293 sinh-+-cosh_binary64_1292 sinh-cosh_binary64_1291 tanh-def-c_binary64_1290 tanh-def-b_binary64_1289 tanh-def-a_binary64_1288 cosh-def_binary64_1287 sinh-def_binary64_1286 tan-neg_binary64_1233 cos-neg_binary64_1232 sin-neg_binary64_1231 tan-0_binary64_1230 cos-0_binary64_1229 sin-0_binary64_1228 hang-m-tan_binary64_1227 hang-p-tan_binary64_1226 hang-m0-tan_binary64_1225 hang-p0-tan_binary64_1224 hang-0m-tan_binary64_1223 hang-0p-tan_binary64_1222 tan-+PI/2_binary64_1221 tan-+PI_binary64_1220 tan-PI_binary64_1219 tan-PI/3_binary64_1218 tan-PI/4_binary64_1217 tan-PI/6_binary64_1216 cos-+PI/2_binary64_1215 cos-+PI_binary64_1214 cos-PI_binary64_1213 cos-PI/2_binary64_1212 cos-PI/3_binary64_1211 cos-PI/4_binary64_1210 cos-PI/6_binary64_1209 sin-+PI/2_binary64_1208 sin-+PI_binary64_1207 sin-PI_binary64_1206 sin-PI/2_binary64_1205 sin-PI/3_binary64_1204 sin-PI/4_binary64_1203 sin-PI/6_binary64_1202 sub-1-sin_binary64_1201 sub-1-cos_binary64_1200 -1-add-sin_binary64_1199 -1-add-cos_binary64_1198 1-sub-sin_binary64_1197 1-sub-cos_binary64_1196 cos-sin-sum_binary64_1195 log-E_binary64_1191 log-pow_binary64_1190 log-rec_binary64_1189 log-div_binary64_1188 log-prod_binary64_1187 pow-base-0_binary64_1185 unpow1/3_binary64_1168 unpow2_binary64_1166 unpow1/2_binary64_1165 exp-to-pow_binary64_1163 unpow0_binary64_1160 unpow1_binary64_1159 unpow-1_binary64_1158 exp-lft-cube_binary64_1157 exp-cbrt_binary64_1155 exp-neg_binary64_1148 e-exp-1_binary64_1146 exp-0_binary64_1143 rem-log-exp_binary64_1142 rem-exp-log_binary64_1141 cube-neg_binary64_1128 rem-3cbrt-rft_binary64_1127 rem-3cbrt-lft_binary64_1126 rem-cbrt-cube_binary64_1125 rem-cube-cbrt_binary64_1124 sqr-abs_binary64_1116 sqr-neg_binary64_1115 rem-sqrt-square_binary64_1114 rem-square-sqrt_binary64_1113 mul-1-neg_binary64_1093 sub0-neg_binary64_1088 mul0-rgt_binary64_1084 lft-mult-inverse_binary64_1079 rgt-mult-inverse_binary64_1078 difference-of-sqr--1_binary64_1072 difference-of-sqr-1_binary64_1071 difference-of-squares_binary64_1070 cancel-sign-sub_binary64_1066 distribute-frac-neg_binary64_1064 distribute-neg-out_binary64_1063 distribute-rgt-neg-out_binary64_1061 distribute-lft-neg-out_binary64_1060 associate--r-_binary64_1040 associate--l-_binary64_1039 associate-+l-_binary64_1036 associate-+r-_binary64_1035
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02749
14249
28949
318949
439649
567649
670849
780849
8106349
9121449
10136449
11220849
12326249
13356049
14444149

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
27.9b
Counts
2 → 1
Compiler

Compiled 66 to 52 computations (21.2% saved)

localize28.0ms (0%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y)
0.1b
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y)
0.1b
(*.f64 (+.f64 (*.f64 x y) z) y)
27.2b
(/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i))

rewrite272.0ms (0.1%)

Algorithm
rewrite-expression-head
Error
27.8b
Rules
24×add-sqr-sqrt_binary64_1123
18×add-cube-cbrt_binary64_1136 *-un-lft-identity_binary64_1101
12×add-exp-log_binary64_1139 add-cbrt-cube_binary64_1137
10×pow1_binary64_1162
times-frac_binary64_1107 associate-*l*_binary64_1042 associate-*r*_binary64_1041
associate-*l/_binary64_1044
flip3-+_binary64_1104 flip-+_binary64_1075
add-log-exp_binary64_1140
associate-/l*_binary64_1046 associate-/r*_binary64_1045 pow-prod-down_binary64_1172 prod-exp_binary64_1150 cbrt-unprod_binary64_1134 unswap-sqr_binary64_1069 *-commutative_binary64_1032
associate-/l/_binary64_1048 associate-/r/_binary64_1047
div-exp_binary64_1152 cbrt-undiv_binary64_1135 frac-2neg_binary64_1112 clear-num_binary64_1100 div-inv_binary64_1098
Counts
4 → 91
Calls

4 calls:

27.0ms
(/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i))
15.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y)
12.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y)
7.0ms
(*.f64 (+.f64 (*.f64 x y) z) y)
Compiler

Compiled 4579 to 1325 computations (71.1% saved)

series8.4s (3.2%)

Error
8.4b
Counts
4 → 117
Calls

4 calls:

7.0s
(/.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y) t) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 y a) y) b) y) c) y) i))
404.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y)
340.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y)
226.0ms
(*.f64 (+.f64 (*.f64 x y) z) y)
Compiler

Compiled 25451 to 17077 computations (32.9% saved)

simplify1.8s (0.7%)

Algorithm
egg-herbie
Rules
833×times-frac_binary64_1107
215×+-commutative_binary64_1031
198×*-commutative_binary64_1032
181×distribute-rgt-in_binary64_1051
171×distribute-lft-in_binary64_1050
160×associate-+r+_binary64_1033
114×associate-/r/_binary64_1047
107×associate-/l*_binary64_1046
73×sub-neg_binary64_1094
70×unswap-sqr_binary64_1069
63×sqr-pow_binary64_1073
60×associate-*r/_binary64_1043
43×associate-*r*_binary64_1041
40×distribute-neg-in_binary64_1062
34×associate-/l/_binary64_1048
30×associate-/r*_binary64_1045
29×neg-mul-1_binary64_1097 neg-sub0_binary64_1096
28×pow-sqr_binary64_1074
17×unpow3_binary64_1167
16×swap-sqr_binary64_1068 associate-*l*_binary64_1042 associate--l+_binary64_1038
15×cube-mult_binary64_1131 cancel-sign-sub-inv_binary64_1067
13×associate--r+_binary64_1037
12×exp-prod_binary64_1153 distribute-rgt-neg-in_binary64_1059
10×cube-prod_binary64_1129
log-prod_binary64_1187 unpow2_binary64_1166
distribute-rgt-out_binary64_1054
distribute-lft-neg-in_binary64_1058
pow-plus_binary64_1164 exp-sum_binary64_1147
cube-unmult_binary64_1138 *-rgt-identity_binary64_1091 difference-of-squares_binary64_1070 distribute-neg-frac_binary64_1065 distribute-lft-neg-out_binary64_1060
/-rgt-identity_binary64_1092
log-div_binary64_1188 unsub-neg_binary64_1095 distribute-lft-out_binary64_1052
div-exp_binary64_1152 rec-exp_binary64_1151 1-exp_binary64_1145 *-inverses_binary64_1081 distribute-rgt-out--_binary64_1055 associate-*l/_binary64_1044 associate-+r-_binary64_1035
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_1364 erf-erfc_binary64_1363 erf-odd_binary64_1362 if-if-and-not_binary64_1361 if-if-and_binary64_1360 if-if-or-not_binary64_1359 if-if-or_binary64_1358 if-not_binary64_1357 if-same_binary64_1356 if-false_binary64_1355 if-true_binary64_1354 not-gte_binary64_1353 not-lte_binary64_1352 not-gt_binary64_1351 not-lt_binary64_1350 gte-same_binary64_1349 lte-same_binary64_1348 gt-same_binary64_1347 lt-same_binary64_1346 sinh---cosh_binary64_1293 sinh-+-cosh_binary64_1292 sinh-cosh_binary64_1291 tanh-def-c_binary64_1290 tanh-def-b_binary64_1289 tanh-def-a_binary64_1288 cosh-def_binary64_1287 sinh-def_binary64_1286 tan-neg_binary64_1233 cos-neg_binary64_1232 sin-neg_binary64_1231 tan-0_binary64_1230 cos-0_binary64_1229 sin-0_binary64_1228 hang-m-tan_binary64_1227 hang-p-tan_binary64_1226 hang-m0-tan_binary64_1225 hang-p0-tan_binary64_1224 hang-0m-tan_binary64_1223 hang-0p-tan_binary64_1222 tan-+PI/2_binary64_1221 tan-+PI_binary64_1220 tan-PI_binary64_1219 tan-PI/3_binary64_1218 tan-PI/4_binary64_1217 tan-PI/6_binary64_1216 cos-+PI/2_binary64_1215 cos-+PI_binary64_1214 cos-PI_binary64_1213 cos-PI/2_binary64_1212 cos-PI/3_binary64_1211 cos-PI/4_binary64_1210 cos-PI/6_binary64_1209 sin-+PI/2_binary64_1208 sin-+PI_binary64_1207 sin-PI_binary64_1206 sin-PI/2_binary64_1205 sin-PI/3_binary64_1204 sin-PI/4_binary64_1203 sin-PI/6_binary64_1202 sub-1-sin_binary64_1201 sub-1-cos_binary64_1200 -1-add-sin_binary64_1199 -1-add-cos_binary64_1198 1-sub-sin_binary64_1197 1-sub-cos_binary64_1196 cos-sin-sum_binary64_1195 log-E_binary64_1191 log-pow_binary64_1190 log-rec_binary64_1189 pow-base-0_binary64_1185 unpow1/3_binary64_1168 unpow1/2_binary64_1165 exp-to-pow_binary64_1163 pow-base-1_binary64_1161 unpow0_binary64_1160 unpow1_binary64_1159 unpow-1_binary64_1158 exp-lft-cube_binary64_1157 exp-lft-sqr_binary64_1156 exp-cbrt_binary64_1155 exp-sqrt_binary64_1154 prod-exp_binary64_1150 exp-diff_binary64_1149 exp-neg_binary64_1148 e-exp-1_binary64_1146 exp-1-e_binary64_1144 exp-0_binary64_1143 rem-log-exp_binary64_1142 rem-exp-log_binary64_1141 cube-div_binary64_1130 cube-neg_binary64_1128 rem-3cbrt-rft_binary64_1127 rem-3cbrt-lft_binary64_1126 rem-cbrt-cube_binary64_1125 rem-cube-cbrt_binary64_1124 sqr-abs_binary64_1116 sqr-neg_binary64_1115 rem-sqrt-square_binary64_1114 rem-square-sqrt_binary64_1113 div-sub_binary64_1106 mul-1-neg_binary64_1093 *-lft-identity_binary64_1090 remove-double-neg_binary64_1089 sub0-neg_binary64_1088 --rgt-identity_binary64_1087 +-rgt-identity_binary64_1086 +-lft-identity_binary64_1085 mul0-rgt_binary64_1084 mul0-lft_binary64_1083 div0_binary64_1082 +-inverses_binary64_1080 lft-mult-inverse_binary64_1079 rgt-mult-inverse_binary64_1078 remove-double-div_binary64_1077 difference-of-sqr--1_binary64_1072 difference-of-sqr-1_binary64_1071 cancel-sign-sub_binary64_1066 distribute-frac-neg_binary64_1064 distribute-neg-out_binary64_1063 distribute-rgt-neg-out_binary64_1061 distribute-rgt1-in_binary64_1057 distribute-lft1-in_binary64_1056 distribute-lft-out--_binary64_1053 count-2_binary64_1049 associate--r-_binary64_1040 associate--l-_binary64_1039 associate-+l-_binary64_1036 associate-+l+_binary64_1034
Counts
208 → 307
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
074713169
1223112821

prune1.2s (0.5%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New29215307
Fresh000
Picked101
Done000
Total29315308
Error
5.3b
Counts
308 → 15
Compiler

Compiled 22356 to 8650 computations (61.3% saved)

localize24.0ms (0%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y)
0.1b
(*.f64 (+.f64 (*.f64 x y) z) y)
0.7b
(/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))))
26.8b
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y) t) (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))

rewrite279.0ms (0.1%)

Algorithm
rewrite-expression-head
Error
5.3b
Rules
35×add-sqr-sqrt_binary64_1123
25×*-un-lft-identity_binary64_1101
24×add-cube-cbrt_binary64_1136
21×add-exp-log_binary64_1139 associate-*r*_binary64_1041
20×times-frac_binary64_1107
15×add-cbrt-cube_binary64_1137
11×pow1_binary64_1162
associate-*l*_binary64_1042
prod-exp_binary64_1150 flip3-+_binary64_1104 flip-+_binary64_1075 associate-*l/_binary64_1044
unswap-sqr_binary64_1069
div-exp_binary64_1152 add-log-exp_binary64_1140 cbrt-unprod_binary64_1134 associate-/r/_binary64_1047
pow-prod-down_binary64_1172 *-commutative_binary64_1032 associate-/l*_binary64_1046 associate-/r*_binary64_1045
1-exp_binary64_1145 rec-exp_binary64_1151 cbrt-undiv_binary64_1135 frac-times_binary64_1111 div-inv_binary64_1098
un-div-inv_binary64_1099 associate-*r/_binary64_1043 inv-pow_binary64_1186 pow-flip_binary64_1175 frac-2neg_binary64_1112 clear-num_binary64_1100
Counts
4 → 115
Calls

4 calls:

26.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y) t) (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
11.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y)
7.0ms
(*.f64 (+.f64 (*.f64 x y) z) y)
5.0ms
(/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))))
Compiler

Compiled 5993 to 1810 computations (69.8% saved)

series8.8s (3.3%)

Error
5.2b
Counts
4 → 123
Calls

4 calls:

7.0s
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y) 7925469156333415/34359738368) y) t) (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
716.0ms
(/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))))
361.0ms
(*.f64 (+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) 471841060772561/17179869184) y)
197.0ms
(*.f64 (+.f64 (*.f64 x y) z) y)
Compiler

Compiled 27842 to 19217 computations (31% saved)

simplify1.9s (0.7%)

Algorithm
egg-herbie
Rules
923×times-frac_binary64_1107
222×+-commutative_binary64_1031
213×*-commutative_binary64_1032
203×distribute-rgt-in_binary64_1051
196×distribute-lft-in_binary64_1050
164×associate-+r+_binary64_1033
115×associate-/l*_binary64_1046
92×sub-neg_binary64_1094
79×associate-*r/_binary64_1043
70×unswap-sqr_binary64_1069
63×sqr-pow_binary64_1073
48×distribute-neg-in_binary64_1062
44×associate-*r*_binary64_1041
37×neg-mul-1_binary64_1097 neg-sub0_binary64_1096
33×associate-/r*_binary64_1045
28×pow-sqr_binary64_1074
19×associate--l+_binary64_1038
18×swap-sqr_binary64_1068 associate-*l*_binary64_1042
17×unpow3_binary64_1167 cancel-sign-sub-inv_binary64_1067
16×cube-mult_binary64_1131 distribute-neg-frac_binary64_1065 associate--r+_binary64_1037
15×*-rgt-identity_binary64_1091 distribute-rgt-neg-in_binary64_1059
12×exp-prod_binary64_1153
10×log-prod_binary64_1187
unpow2_binary64_1166 cube-prod_binary64_1129 distribute-lft-neg-in_binary64_1058
cube-unmult_binary64_1138 distribute-rgt-out_binary64_1054
pow-plus_binary64_1164 exp-sum_binary64_1147
/-rgt-identity_binary64_1092 difference-of-squares_binary64_1070 distribute-lft-neg-out_binary64_1060
log-div_binary64_1188
associate-+r-_binary64_1035
log-rec_binary64_1189 unsub-neg_binary64_1095 distribute-lft-out_binary64_1052
div-exp_binary64_1152 rec-exp_binary64_1151 prod-exp_binary64_1150 1-exp_binary64_1145 rem-log-exp_binary64_1142 rem-sqrt-square_binary64_1114 div-sub_binary64_1106 *-lft-identity_binary64_1090 *-inverses_binary64_1081 distribute-rgt-out--_binary64_1055 associate-*l/_binary64_1044
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_1364 erf-erfc_binary64_1363 erf-odd_binary64_1362 if-if-and-not_binary64_1361 if-if-and_binary64_1360 if-if-or-not_binary64_1359 if-if-or_binary64_1358 if-not_binary64_1357 if-same_binary64_1356 if-false_binary64_1355 if-true_binary64_1354 not-gte_binary64_1353 not-lte_binary64_1352 not-gt_binary64_1351 not-lt_binary64_1350 gte-same_binary64_1349 lte-same_binary64_1348 gt-same_binary64_1347 lt-same_binary64_1346 sinh---cosh_binary64_1293 sinh-+-cosh_binary64_1292 sinh-cosh_binary64_1291 tanh-def-c_binary64_1290 tanh-def-b_binary64_1289 tanh-def-a_binary64_1288 cosh-def_binary64_1287 sinh-def_binary64_1286 tan-neg_binary64_1233 cos-neg_binary64_1232 sin-neg_binary64_1231 tan-0_binary64_1230 cos-0_binary64_1229 sin-0_binary64_1228 hang-m-tan_binary64_1227 hang-p-tan_binary64_1226 hang-m0-tan_binary64_1225 hang-p0-tan_binary64_1224 hang-0m-tan_binary64_1223 hang-0p-tan_binary64_1222 tan-+PI/2_binary64_1221 tan-+PI_binary64_1220 tan-PI_binary64_1219 tan-PI/3_binary64_1218 tan-PI/4_binary64_1217 tan-PI/6_binary64_1216 cos-+PI/2_binary64_1215 cos-+PI_binary64_1214 cos-PI_binary64_1213 cos-PI/2_binary64_1212 cos-PI/3_binary64_1211 cos-PI/4_binary64_1210 cos-PI/6_binary64_1209 sin-+PI/2_binary64_1208 sin-+PI_binary64_1207 sin-PI_binary64_1206 sin-PI/2_binary64_1205 sin-PI/3_binary64_1204 sin-PI/4_binary64_1203 sin-PI/6_binary64_1202 sub-1-sin_binary64_1201 sub-1-cos_binary64_1200 -1-add-sin_binary64_1199 -1-add-cos_binary64_1198 1-sub-sin_binary64_1197 1-sub-cos_binary64_1196 cos-sin-sum_binary64_1195 log-E_binary64_1191 log-pow_binary64_1190 pow-base-0_binary64_1185 unpow1/3_binary64_1168 unpow1/2_binary64_1165 exp-to-pow_binary64_1163 pow-base-1_binary64_1161 unpow0_binary64_1160 unpow1_binary64_1159 unpow-1_binary64_1158 exp-lft-cube_binary64_1157 exp-lft-sqr_binary64_1156 exp-cbrt_binary64_1155 exp-sqrt_binary64_1154 exp-diff_binary64_1149 exp-neg_binary64_1148 e-exp-1_binary64_1146 exp-1-e_binary64_1144 exp-0_binary64_1143 rem-exp-log_binary64_1141 cube-div_binary64_1130 cube-neg_binary64_1128 rem-3cbrt-rft_binary64_1127 rem-3cbrt-lft_binary64_1126 rem-cbrt-cube_binary64_1125 rem-cube-cbrt_binary64_1124 sqr-abs_binary64_1116 sqr-neg_binary64_1115 rem-square-sqrt_binary64_1113 mul-1-neg_binary64_1093 remove-double-neg_binary64_1089 sub0-neg_binary64_1088 --rgt-identity_binary64_1087 +-rgt-identity_binary64_1086 +-lft-identity_binary64_1085 mul0-rgt_binary64_1084 mul0-lft_binary64_1083 div0_binary64_1082 +-inverses_binary64_1080 lft-mult-inverse_binary64_1079 rgt-mult-inverse_binary64_1078 remove-double-div_binary64_1077 difference-of-sqr--1_binary64_1072 difference-of-sqr-1_binary64_1071 cancel-sign-sub_binary64_1066 distribute-frac-neg_binary64_1064 distribute-neg-out_binary64_1063 distribute-rgt-neg-out_binary64_1061 distribute-rgt1-in_binary64_1057 distribute-lft1-in_binary64_1056 distribute-lft-out--_binary64_1053 count-2_binary64_1049 associate-/l/_binary64_1048 associate-/r/_binary64_1047 associate--r-_binary64_1040 associate--l-_binary64_1039 associate-+l-_binary64_1036 associate-+l+_binary64_1034
Counts
238 → 304
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
080814807
1239614257

prune1.2s (0.5%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New3004304
Fresh11314
Picked101
Done000
Total30217319
Error
4.9b
Counts
319 → 17
Compiler

Compiled 23216 to 9528 computations (59% saved)

localize27.0ms (0%)

Local error

Found 4 expressions with local error:

0.1b
(*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))
0.1b
(*.f64 y (+.f64 z (*.f64 y x)))
0.4b
(/.f64 1 (/.f64 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))) (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x))))))))))
27.3b
(/.f64 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))) (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))))))

rewrite407.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
4.9b
Rules
90×times-frac_binary64_1107
64×add-sqr-sqrt_binary64_1123
60×add-cube-cbrt_binary64_1136 *-un-lft-identity_binary64_1101
21×add-exp-log_binary64_1139
18×associate-/r*_binary64_1045
15×add-cbrt-cube_binary64_1137
11×associate-/r/_binary64_1047
pow1_binary64_1162
div-exp_binary64_1152 flip3-+_binary64_1104 flip-+_binary64_1075
div-inv_binary64_1098 associate-/l*_binary64_1046 associate-*l*_binary64_1042 associate-*r*_binary64_1041
add-log-exp_binary64_1140 cbrt-undiv_binary64_1135 associate-*r/_binary64_1043
frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l/_binary64_1048 1-exp_binary64_1145 rec-exp_binary64_1151 pow-prod-down_binary64_1172 prod-exp_binary64_1150 cbrt-unprod_binary64_1134 unswap-sqr_binary64_1069 distribute-rgt-in_binary64_1051 distribute-lft-in_binary64_1050 *-commutative_binary64_1032
inv-pow_binary64_1186 pow-flip_binary64_1175
Counts
4 → 159
Calls

4 calls:

9.0ms
(/.f64 1 (/.f64 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))) (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x))))))))))
7.0ms
(/.f64 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))) (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))))))
6.0ms
(*.f64 y (+.f64 z (*.f64 y x)))
6.0ms
(*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))
Compiler

Compiled 9643 to 3129 computations (67.6% saved)

series17.9s (6.8%)

Error
3.6b
Counts
4 → 150
Calls

4 calls:

9.4s
(/.f64 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))) (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))))))
7.0s
(/.f64 1 (/.f64 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))) (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x))))))))))
335.0ms
(*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))
216.0ms
(*.f64 y (+.f64 z (*.f64 y x)))
Compiler

Compiled 51603 to 36280 computations (29.7% saved)

simplify6.4s (2.4%)

Algorithm
egg-herbie
Rules
501×+-commutative_binary64_1031
431×associate-+r+_binary64_1033
312×*-commutative_binary64_1032
226×associate-/l*_binary64_1046
137×associate-*r/_binary64_1043
135×sub-neg_binary64_1094
133×associate-/r*_binary64_1045
86×sqr-pow_binary64_1073
61×associate-/r/_binary64_1047
59×times-frac_binary64_1107
56×associate-*r*_binary64_1041
47×neg-mul-1_binary64_1097 neg-sub0_binary64_1096
41×pow-sqr_binary64_1074
31×associate--l+_binary64_1038
26×associate--r+_binary64_1037
22×distribute-rgt-in_binary64_1051 distribute-lft-in_binary64_1050
16×unpow3_binary64_1167 associate-*l*_binary64_1042
15×cube-mult_binary64_1131
14×unpow2_binary64_1166
10×pow-plus_binary64_1164 /-rgt-identity_binary64_1092 *-rgt-identity_binary64_1091
cancel-sign-sub-inv_binary64_1067
log-prod_binary64_1187 exp-prod_binary64_1153 cube-unmult_binary64_1138
log-div_binary64_1188 cube-prod_binary64_1129
swap-sqr_binary64_1068
distribute-lft-out_binary64_1052
log-rec_binary64_1189 exp-sum_binary64_1147 remove-double-div_binary64_1077 difference-of-squares_binary64_1070 associate-/l/_binary64_1048
unsub-neg_binary64_1095 distribute-neg-in_binary64_1062 distribute-rgt-out--_binary64_1055 associate-*l/_binary64_1044 associate--r-_binary64_1040 associate-+r-_binary64_1035
div-exp_binary64_1152 rec-exp_binary64_1151 prod-exp_binary64_1150 1-exp_binary64_1145 rem-log-exp_binary64_1142 rem-sqrt-square_binary64_1114 div-sub_binary64_1106 *-lft-identity_binary64_1090 sub0-neg_binary64_1088 *-inverses_binary64_1081 distribute-neg-frac_binary64_1065
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_1364 erf-erfc_binary64_1363 erf-odd_binary64_1362 if-if-and-not_binary64_1361 if-if-and_binary64_1360 if-if-or-not_binary64_1359 if-if-or_binary64_1358 if-not_binary64_1357 if-same_binary64_1356 if-false_binary64_1355 if-true_binary64_1354 not-gte_binary64_1353 not-lte_binary64_1352 not-gt_binary64_1351 not-lt_binary64_1350 gte-same_binary64_1349 lte-same_binary64_1348 gt-same_binary64_1347 lt-same_binary64_1346 sinh---cosh_binary64_1293 sinh-+-cosh_binary64_1292 sinh-cosh_binary64_1291 tanh-def-c_binary64_1290 tanh-def-b_binary64_1289 tanh-def-a_binary64_1288 cosh-def_binary64_1287 sinh-def_binary64_1286 tan-neg_binary64_1233 cos-neg_binary64_1232 sin-neg_binary64_1231 tan-0_binary64_1230 cos-0_binary64_1229 sin-0_binary64_1228 hang-m-tan_binary64_1227 hang-p-tan_binary64_1226 hang-m0-tan_binary64_1225 hang-p0-tan_binary64_1224 hang-0m-tan_binary64_1223 hang-0p-tan_binary64_1222 tan-+PI/2_binary64_1221 tan-+PI_binary64_1220 tan-PI_binary64_1219 tan-PI/3_binary64_1218 tan-PI/4_binary64_1217 tan-PI/6_binary64_1216 cos-+PI/2_binary64_1215 cos-+PI_binary64_1214 cos-PI_binary64_1213 cos-PI/2_binary64_1212 cos-PI/3_binary64_1211 cos-PI/4_binary64_1210 cos-PI/6_binary64_1209 sin-+PI/2_binary64_1208 sin-+PI_binary64_1207 sin-PI_binary64_1206 sin-PI/2_binary64_1205 sin-PI/3_binary64_1204 sin-PI/4_binary64_1203 sin-PI/6_binary64_1202 sub-1-sin_binary64_1201 sub-1-cos_binary64_1200 -1-add-sin_binary64_1199 -1-add-cos_binary64_1198 1-sub-sin_binary64_1197 1-sub-cos_binary64_1196 cos-sin-sum_binary64_1195 log-E_binary64_1191 log-pow_binary64_1190 pow-base-0_binary64_1185 unpow1/3_binary64_1168 unpow1/2_binary64_1165 exp-to-pow_binary64_1163 pow-base-1_binary64_1161 unpow0_binary64_1160 unpow1_binary64_1159 unpow-1_binary64_1158 exp-lft-cube_binary64_1157 exp-lft-sqr_binary64_1156 exp-cbrt_binary64_1155 exp-sqrt_binary64_1154 exp-diff_binary64_1149 exp-neg_binary64_1148 e-exp-1_binary64_1146 exp-1-e_binary64_1144 exp-0_binary64_1143 rem-exp-log_binary64_1141 cube-div_binary64_1130 cube-neg_binary64_1128 rem-3cbrt-rft_binary64_1127 rem-3cbrt-lft_binary64_1126 rem-cbrt-cube_binary64_1125 rem-cube-cbrt_binary64_1124 sqr-abs_binary64_1116 sqr-neg_binary64_1115 rem-square-sqrt_binary64_1113 mul-1-neg_binary64_1093 remove-double-neg_binary64_1089 --rgt-identity_binary64_1087 +-rgt-identity_binary64_1086 +-lft-identity_binary64_1085 mul0-rgt_binary64_1084 mul0-lft_binary64_1083 div0_binary64_1082 +-inverses_binary64_1080 lft-mult-inverse_binary64_1079 rgt-mult-inverse_binary64_1078 difference-of-sqr--1_binary64_1072 difference-of-sqr-1_binary64_1071 unswap-sqr_binary64_1069 cancel-sign-sub_binary64_1066 distribute-frac-neg_binary64_1064 distribute-neg-out_binary64_1063 distribute-rgt-neg-out_binary64_1061 distribute-lft-neg-out_binary64_1060 distribute-rgt-neg-in_binary64_1059 distribute-lft-neg-in_binary64_1058 distribute-rgt1-in_binary64_1057 distribute-lft1-in_binary64_1056 distribute-rgt-out_binary64_1054 distribute-lft-out--_binary64_1053 count-2_binary64_1049 associate--l-_binary64_1039 associate-+l-_binary64_1036 associate-+l+_binary64_1034
Counts
309 → 358
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0149131545
1467730863

prune2.0s (0.8%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New3544358
Fresh61016
Picked011
Done000
Total36015375
Error
3.3b
Counts
375 → 15
Compiler

Compiled 33449 to 14578 computations (56.4% saved)

localize33.0ms (0%)

Local error

Found 4 expressions with local error:

16.1b
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
16.1b
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
16.1b
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
23.9b
(*.f64 (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))))) (*.f64 (cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))))) (cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))))

rewrite385.0ms (0.1%)

Algorithm
rewrite-expression-head
Error
3.3b
Rules
45×cbrt-prod_binary64_1132
27×add-sqr-sqrt_binary64_1123 times-frac_binary64_1107
26×add-cube-cbrt_binary64_1136 *-un-lft-identity_binary64_1101
15×cbrt-div_binary64_1133
pow1_binary64_1162 add-exp-log_binary64_1139 frac-times_binary64_1111
add-cbrt-cube_binary64_1137 flip3-+_binary64_1104 flip-+_binary64_1075
associate-*r/_binary64_1043 associate-/r/_binary64_1047
associate-*l/_binary64_1044
add-log-exp_binary64_1140
pow-prod-down_binary64_1172 prod-exp_binary64_1150 cbrt-unprod_binary64_1134 associate-*l*_binary64_1042 pow1/3_binary64_1183 div-inv_binary64_1098
unswap-sqr_binary64_1069 associate-*r*_binary64_1041 *-commutative_binary64_1032
Counts
4 → 102
Calls

4 calls:

17.0ms
(*.f64 (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))))) (*.f64 (cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))))) (cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))))
4.0ms
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
4.0ms
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
4.0ms
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
Compiler

Compiled 9901 to 2700 computations (72.7% saved)

series3.1min (71.6%)

Error
3.3b
Counts
4 → 118
Calls

4 calls:

3.1min
(*.f64 (+.f64 t (*.f64 y (+.f64 7925469156333415/34359738368 (*.f64 y (+.f64 471841060772561/17179869184 (*.f64 y (+.f64 z (*.f64 y x)))))))) (*.f64 (cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a))))))))) (cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))))
1.1s
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
1.1s
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
1.1s
(cbrt.f64 (/.f64 1 (+.f64 i (*.f64 y (+.f64 c (*.f64 y (+.f64 b (*.f64 y (+.f64 y a)))))))))
Compiler

Compiled 59410 to 41656 computations (29.9% saved)

simplify2.9s (1.1%)

Algorithm
egg-herbie
Rules
357×*-commutative_binary64_1032
222×associate-/l*_binary64_1046
198×distribute-rgt-in_binary64_1051
194×distribute-lft-in_binary64_1050
172×+-commutative_binary64_1031
163×associate-*r*_binary64_1041
138×associate-/r*_binary64_1045
123×associate-+r+_binary64_1033
116×sqr-pow_binary64_1073
115×associate-*l/_binary64_1044
80×cancel-sign-sub-inv_binary64_1067
73×sub-neg_binary64_1094
71×distribute-rgt-out_binary64_1054
54×associate-/r/_binary64_1047
50×pow-sqr_binary64_1074
49×associate-*r/_binary64_1043
48×associate-/l/_binary64_1048
45×unswap-sqr_binary64_1069
37×times-frac_binary64_1107
36×distribute-neg-in_binary64_1062 associate-*l*_binary64_1042
35×neg-mul-1_binary64_1097
34×distribute-rgt-neg-in_binary64_1059
29×exp-prod_binary64_1153
28×exp-sum_binary64_1147
27×neg-sub0_binary64_1096
26×distribute-lft-out_binary64_1052
23×unpow1/3_binary64_1168 distribute-lft-neg-in_binary64_1058
22×distribute-lft-neg-out_binary64_1060
16×log-div_binary64_1188
12×unsub-neg_binary64_1095
11×distribute-rgt-neg-out_binary64_1061 associate--r+_binary64_1037
10×log-prod_binary64_1187 associate--l+_binary64_1038
log-rec_binary64_1189 unpow3_binary64_1167 unpow2_binary64_1166 cube-mult_binary64_1131
swap-sqr_binary64_1068
distribute-neg-out_binary64_1063
distribute-rgt-out--_binary64_1055
log-pow_binary64_1190 pow-plus_binary64_1164 cube-unmult_binary64_1138 cube-prod_binary64_1129
/-rgt-identity_binary64_1092 difference-of-squares_binary64_1070
associate-+r-_binary64_1035
div-exp_binary64_1152 rec-exp_binary64_1151 1-exp_binary64_1145 rem-log-exp_binary64_1142 rem-3cbrt-lft_binary64_1126 *-rgt-identity_binary64_1091 *-lft-identity_binary64_1090 *-inverses_binary64_1081 count-2_binary64_1049
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_1364 erf-erfc_binary64_1363 erf-odd_binary64_1362 if-if-and-not_binary64_1361 if-if-and_binary64_1360 if-if-or-not_binary64_1359 if-if-or_binary64_1358 if-not_binary64_1357 if-same_binary64_1356 if-false_binary64_1355 if-true_binary64_1354 not-gte_binary64_1353 not-lte_binary64_1352 not-gt_binary64_1351 not-lt_binary64_1350 gte-same_binary64_1349 lte-same_binary64_1348 gt-same_binary64_1347 lt-same_binary64_1346 sinh---cosh_binary64_1293 sinh-+-cosh_binary64_1292 sinh-cosh_binary64_1291 tanh-def-c_binary64_1290 tanh-def-b_binary64_1289 tanh-def-a_binary64_1288 cosh-def_binary64_1287 sinh-def_binary64_1286 tan-neg_binary64_1233 cos-neg_binary64_1232 sin-neg_binary64_1231 tan-0_binary64_1230 cos-0_binary64_1229 sin-0_binary64_1228 hang-m-tan_binary64_1227 hang-p-tan_binary64_1226 hang-m0-tan_binary64_1225 hang-p0-tan_binary64_1224 hang-0m-tan_binary64_1223 hang-0p-tan_binary64_1222 tan-+PI/2_binary64_1221 tan-+PI_binary64_1220 tan-PI_binary64_1219 tan-PI/3_binary64_1218 tan-PI/4_binary64_1217 tan-PI/6_binary64_1216 cos-+PI/2_binary64_1215 cos-+PI_binary64_1214 cos-PI_binary64_1213 cos-PI/2_binary64_1212 cos-PI/3_binary64_1211 cos-PI/4_binary64_1210 cos-PI/6_binary64_1209 sin-+PI/2_binary64_1208 sin-+PI_binary64_1207 sin-PI_binary64_1206 sin-PI/2_binary64_1205 sin-PI/3_binary64_1204 sin-PI/4_binary64_1203 sin-PI/6_binary64_1202 sub-1-sin_binary64_1201 sub-1-cos_binary64_1200 -1-add-sin_binary64_1199 -1-add-cos_binary64_1198 1-sub-sin_binary64_1197 1-sub-cos_binary64_1196 cos-sin-sum_binary64_1195 log-E_binary64_1191 pow-base-0_binary64_1185 unpow1/2_binary64_1165 exp-to-pow_binary64_1163 pow-base-1_binary64_1161 unpow0_binary64_1160 unpow1_binary64_1159 unpow-1_binary64_1158 exp-lft-cube_binary64_1157 exp-lft-sqr_binary64_1156 exp-cbrt_binary64_1155 exp-sqrt_binary64_1154 prod-exp_binary64_1150 exp-diff_binary64_1149 exp-neg_binary64_1148 e-exp-1_binary64_1146 exp-1-e_binary64_1144 exp-0_binary64_1143 rem-exp-log_binary64_1141 cube-div_binary64_1130 cube-neg_binary64_1128 rem-3cbrt-rft_binary64_1127 rem-cbrt-cube_binary64_1125 rem-cube-cbrt_binary64_1124 sqr-abs_binary64_1116 sqr-neg_binary64_1115 rem-sqrt-square_binary64_1114 rem-square-sqrt_binary64_1113 div-sub_binary64_1106 mul-1-neg_binary64_1093 remove-double-neg_binary64_1089 sub0-neg_binary64_1088 --rgt-identity_binary64_1087 +-rgt-identity_binary64_1086 +-lft-identity_binary64_1085 mul0-rgt_binary64_1084 mul0-lft_binary64_1083 div0_binary64_1082 +-inverses_binary64_1080 lft-mult-inverse_binary64_1079 rgt-mult-inverse_binary64_1078 remove-double-div_binary64_1077 difference-of-sqr--1_binary64_1072 difference-of-sqr-1_binary64_1071 cancel-sign-sub_binary64_1066 distribute-neg-frac_binary64_1065 distribute-frac-neg_binary64_1064 distribute-rgt1-in_binary64_1057 distribute-lft1-in_binary64_1056 distribute-lft-out--_binary64_1053 associate--r-_binary64_1040 associate--l-_binary64_1039 associate-+l-_binary64_1036 associate-+l+_binary64_1034
Counts
220 → 280
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
082816665
1256215755

prune1.9s (0.7%)

Pruning

16 alts after pruning (14 fresh and 2 done)

PrunedKeptTotal
New2791280
Fresh01313
Picked011
Done011
Total27916295
Error
3.3b
Counts
295 → 16
Compiler

Compiled 28667 to 12258 computations (57.2% saved)

regimes9.6s (3.7%)

Accuracy

Total 6.5b remaining (70.1%)

Threshold costs 0b (0%)

Compiler

Compiled 87026 to 58348 computations (33% saved)

bsearch106.0ms (0%)

Steps
ItersRangePoint
9
3.199662533553442e+58
3.759847030238539e+67
6.42069951733776e+59
8
-1.539657876756286e+61
-1.36660191382972e+57
-1.5366475830180087e+60
Compiler

Compiled 1 to 8 computations (-700% saved)

simplify11.0ms (0%)

Algorithm
egg-herbie
Rules
17×+-commutative_binary64_1031
13×*-commutative_binary64_1032
sub-neg_binary64_1094
neg-mul-1_binary64_1097 neg-sub0_binary64_1096
cancel-sign-sub-inv_binary64_1067 distribute-neg-frac_binary64_1065 distribute-rgt-neg-in_binary64_1059
distribute-lft-neg-out_binary64_1060 distribute-lft-neg-in_binary64_1058
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_1361 if-if-and_binary64_1360 if-if-or-not_binary64_1359 if-if-or_binary64_1358 if-not_binary64_1357 if-same_binary64_1356 if-false_binary64_1355 if-true_binary64_1354 tan-0_binary64_1230 cos-0_binary64_1229 sin-0_binary64_1228 unpow1_binary64_1159 e-exp-1_binary64_1146 1-exp_binary64_1145 exp-1-e_binary64_1144 exp-0_binary64_1143 sqr-abs_binary64_1116 sqr-neg_binary64_1115 unsub-neg_binary64_1095 mul-1-neg_binary64_1093 /-rgt-identity_binary64_1092 *-rgt-identity_binary64_1091 *-lft-identity_binary64_1090 remove-double-neg_binary64_1089 sub0-neg_binary64_1088 --rgt-identity_binary64_1087 +-rgt-identity_binary64_1086 +-lft-identity_binary64_1085 cancel-sign-sub_binary64_1066 distribute-frac-neg_binary64_1064 distribute-neg-out_binary64_1063 distribute-neg-in_binary64_1062 distribute-rgt-neg-out_binary64_1061
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04393
16893
28493
39493
410193
510393
Proof
(if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (=> (* f64 (/ f64 h3 h0) h1)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 h1 h0) h2) h0) 471841060772561/17179869184) h0) 7925469156333415/34359738368) h0) h4) (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 h0 h3) h0) h5) h0) h6) h0) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (=> (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 h1 h0) h2) h0) 471841060772561/17179869184) h0) 7925469156333415/34359738368) h0)) h4) (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 h0 h3) h0) h5) h0) h6) h0) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (=> (* f64 (+ f64 (* f64 (+ f64 (* f64 h1 h0) h2) h0) 471841060772561/17179869184) h0)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 h0 h3) h0) h5) h0) h6) h0) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (=> (* f64 (+ f64 (* f64 h1 h0) h2) h0)) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 h0 h3) h0) h5) h0) h6) h0) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h1 h0) h2)) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (=> (* f64 (+ f64 (* f64 (+ f64 (* f64 (+ f64 h0 h3) h0) h5) h0) h6) h0)) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h1 h0) h2)) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 h0 (+ f64 (=> (* f64 (+ f64 (* f64 (+ f64 h0 h3) h0) h5) h0)) h6)) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h1 h0) h2)) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (=> (* f64 (+ f64 h0 h3) h0)) h5)) h6)) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (=> (+ f64 (* f64 h1 h0) h2))) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 h0 h3)) h5)) h6)) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) +-commutative_binary64_1031 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 h2 (=> (* f64 h1 h0)))) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 h0 h3)) h5)) h6)) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1)))))) *-commutative_binary64_1032 => (if real (<= f64 h0 -1536647583018008740957316721930820134785948664020466327879680) (+ f64 h1 (- f64 (/ f64 h2 h0) (* f64 h1 (/ f64 h3 h0)))) (if real (<= f64 h0 642069951733776016577218231576609408202754235587858867945472) (/ f64 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 h2 (* f64 h0 h1))) 471841060772561/17179869184)) 7925469156333415/34359738368)) h4) (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 (* f64 h0 (+ f64 h0 h3)) h5)) h6)) h7)) (+ f64 h1 (- f64 (/ f64 h2 h0) (/ f64 h3 (/ f64 h0 h1))))))

end0.0ms (0%)

sample6.8s (2.6%)

Algorithm
intervals
Results
682.0ms8000×body128valid
21.0ms267×body128invalid
Compiler

Compiled 9712 to 6513 computations (32.9% saved)

Profiling

Loading profile data...