Details

Time bar (total: 16.2s)

analyze911.0ms (5.6%)

Algorithm
search
egg-herbie
Rules
28×sub-neg_binary64_2117
25×cancel-sign-sub-inv_binary64_2090
18×distribute-rgt-in_binary64_2074
16×neg-mul-1_binary64_2120
15×associate--r+_binary64_2060
14×unsub-neg_binary64_2118
12×associate--r-_binary64_2063
10×neg-sub0_binary64_2119 distribute-lft-in_binary64_2073
*-lft-identity_binary64_2113 sub0-neg_binary64_2111 distribute-neg-in_binary64_2085 +-commutative_binary64_2054
distribute-lft-neg-out_binary64_2083 distribute-rgt-neg-in_binary64_2082 associate-+l-_binary64_2059
+-lft-identity_binary64_2108 associate-+l+_binary64_2057
distribute-rgt-neg-out_binary64_2084 *-commutative_binary64_2055
*-rgt-identity_binary64_2114
--rgt-identity_binary64_2110 associate--l+_binary64_2061 associate-+r-_binary64_2058 associate-+r+_binary64_2056
1-exp_binary64_2168 remove-double-neg_binary64_2112 +-rgt-identity_binary64_2109 distribute-lft-neg-in_binary64_2081
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_2387 erf-erfc_binary64_2386 erf-odd_binary64_2385 if-if-and-not_binary64_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 not-gte_binary64_2376 not-lte_binary64_2375 not-gt_binary64_2374 not-lt_binary64_2373 gte-same_binary64_2372 lte-same_binary64_2371 gt-same_binary64_2370 lt-same_binary64_2369 sinh---cosh_binary64_2316 sinh-+-cosh_binary64_2315 sinh-cosh_binary64_2314 tanh-def-c_binary64_2313 tanh-def-b_binary64_2312 tanh-def-a_binary64_2311 cosh-def_binary64_2310 sinh-def_binary64_2309 tan-neg_binary64_2256 cos-neg_binary64_2255 sin-neg_binary64_2254 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 hang-m-tan_binary64_2250 hang-p-tan_binary64_2249 hang-m0-tan_binary64_2248 hang-p0-tan_binary64_2247 hang-0m-tan_binary64_2246 hang-0p-tan_binary64_2245 tan-+PI/2_binary64_2244 tan-+PI_binary64_2243 tan-PI_binary64_2242 tan-PI/3_binary64_2241 tan-PI/4_binary64_2240 tan-PI/6_binary64_2239 cos-+PI/2_binary64_2238 cos-+PI_binary64_2237 cos-PI_binary64_2236 cos-PI/2_binary64_2235 cos-PI/3_binary64_2234 cos-PI/4_binary64_2233 cos-PI/6_binary64_2232 sin-+PI/2_binary64_2231 sin-+PI_binary64_2230 sin-PI_binary64_2229 sin-PI/2_binary64_2228 sin-PI/3_binary64_2227 sin-PI/4_binary64_2226 sin-PI/6_binary64_2225 sub-1-sin_binary64_2224 sub-1-cos_binary64_2223 -1-add-sin_binary64_2222 -1-add-cos_binary64_2221 1-sub-sin_binary64_2220 1-sub-cos_binary64_2219 cos-sin-sum_binary64_2218 log-E_binary64_2214 log-pow_binary64_2213 log-rec_binary64_2212 log-div_binary64_2211 log-prod_binary64_2210 pow-base-0_binary64_2208 unpow1/3_binary64_2191 unpow3_binary64_2190 unpow2_binary64_2189 unpow1/2_binary64_2188 pow-plus_binary64_2187 exp-to-pow_binary64_2186 pow-base-1_binary64_2184 unpow0_binary64_2183 unpow1_binary64_2182 unpow-1_binary64_2181 exp-lft-cube_binary64_2180 exp-lft-sqr_binary64_2179 exp-cbrt_binary64_2178 exp-sqrt_binary64_2177 exp-prod_binary64_2176 div-exp_binary64_2175 rec-exp_binary64_2174 prod-exp_binary64_2173 exp-diff_binary64_2172 exp-neg_binary64_2171 exp-sum_binary64_2170 e-exp-1_binary64_2169 exp-1-e_binary64_2167 exp-0_binary64_2166 rem-log-exp_binary64_2165 rem-exp-log_binary64_2164 cube-unmult_binary64_2161 cube-mult_binary64_2154 cube-div_binary64_2153 cube-prod_binary64_2152 cube-neg_binary64_2151 rem-3cbrt-rft_binary64_2150 rem-3cbrt-lft_binary64_2149 rem-cbrt-cube_binary64_2148 rem-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 sqr-neg_binary64_2138 rem-sqrt-square_binary64_2137 rem-square-sqrt_binary64_2136 times-frac_binary64_2130 div-sub_binary64_2129 mul-1-neg_binary64_2116 /-rgt-identity_binary64_2115 mul0-rgt_binary64_2107 mul0-lft_binary64_2106 div0_binary64_2105 *-inverses_binary64_2104 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 rgt-mult-inverse_binary64_2101 remove-double-div_binary64_2100 pow-sqr_binary64_2097 sqr-pow_binary64_2096 difference-of-sqr--1_binary64_2095 difference-of-sqr-1_binary64_2094 difference-of-squares_binary64_2093 unswap-sqr_binary64_2092 swap-sqr_binary64_2091 cancel-sign-sub_binary64_2089 distribute-neg-frac_binary64_2088 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 distribute-rgt1-in_binary64_2080 distribute-lft1-in_binary64_2079 distribute-rgt-out--_binary64_2078 distribute-rgt-out_binary64_2077 distribute-lft-out--_binary64_2076 distribute-lft-out_binary64_2075 count-2_binary64_2072 associate-/l/_binary64_2071 associate-/r/_binary64_2070 associate-/l*_binary64_2069 associate-/r*_binary64_2068 associate-*l/_binary64_2067 associate-*r/_binary64_2066 associate-*l*_binary64_2065 associate-*r*_binary64_2064 associate--l-_binary64_2062
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
11422
22222
33322
44222
56622
69922
711622
813922
914322
1013122
1111722
022
122
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
12.5%87.4%0.1%5
18.7%81.2%0.1%6
21.9%78%0.1%7
23.4%76.5%0.1%8
24.2%75.7%0.1%9
24.6%75.3%0.1%10
24.8%75.1%0.1%11
24.9%75%0.1%12
24.9%75%0.1%13
25%75%0.1%14
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample72.0ms (0.4%)

Algorithm
intervals
Results
30.0ms113×body1024valid
20.0ms37×body2048valid
7.0ms50×body512valid
2.0ms42×body128valid
1.0ms14×body256valid
Compiler

Compiled 15 to 15 computations (0% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×sub-neg_binary64_2117
14×cancel-sign-sub-inv_binary64_2090
10×distribute-rgt-in_binary64_2074
neg-mul-1_binary64_2120
associate--r+_binary64_2060
unsub-neg_binary64_2118
neg-sub0_binary64_2119 associate--r-_binary64_2063
distribute-neg-in_binary64_2085 distribute-lft-neg-out_binary64_2083 distribute-rgt-neg-in_binary64_2082 distribute-lft-in_binary64_2073 +-commutative_binary64_2054
*-lft-identity_binary64_2113 sub0-neg_binary64_2111 associate-+l-_binary64_2059
+-lft-identity_binary64_2108 distribute-rgt-neg-out_binary64_2084 associate-+l+_binary64_2057 *-commutative_binary64_2055
*-rgt-identity_binary64_2114
1-exp_binary64_2168 remove-double-neg_binary64_2112 --rgt-identity_binary64_2110 +-rgt-identity_binary64_2109 distribute-lft-neg-in_binary64_2081 associate--l+_binary64_2061 associate-+r-_binary64_2058 associate-+r+_binary64_2056
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_2387 erf-erfc_binary64_2386 erf-odd_binary64_2385 if-if-and-not_binary64_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 not-gte_binary64_2376 not-lte_binary64_2375 not-gt_binary64_2374 not-lt_binary64_2373 gte-same_binary64_2372 lte-same_binary64_2371 gt-same_binary64_2370 lt-same_binary64_2369 sinh---cosh_binary64_2316 sinh-+-cosh_binary64_2315 sinh-cosh_binary64_2314 tanh-def-c_binary64_2313 tanh-def-b_binary64_2312 tanh-def-a_binary64_2311 cosh-def_binary64_2310 sinh-def_binary64_2309 tan-neg_binary64_2256 cos-neg_binary64_2255 sin-neg_binary64_2254 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 hang-m-tan_binary64_2250 hang-p-tan_binary64_2249 hang-m0-tan_binary64_2248 hang-p0-tan_binary64_2247 hang-0m-tan_binary64_2246 hang-0p-tan_binary64_2245 tan-+PI/2_binary64_2244 tan-+PI_binary64_2243 tan-PI_binary64_2242 tan-PI/3_binary64_2241 tan-PI/4_binary64_2240 tan-PI/6_binary64_2239 cos-+PI/2_binary64_2238 cos-+PI_binary64_2237 cos-PI_binary64_2236 cos-PI/2_binary64_2235 cos-PI/3_binary64_2234 cos-PI/4_binary64_2233 cos-PI/6_binary64_2232 sin-+PI/2_binary64_2231 sin-+PI_binary64_2230 sin-PI_binary64_2229 sin-PI/2_binary64_2228 sin-PI/3_binary64_2227 sin-PI/4_binary64_2226 sin-PI/6_binary64_2225 sub-1-sin_binary64_2224 sub-1-cos_binary64_2223 -1-add-sin_binary64_2222 -1-add-cos_binary64_2221 1-sub-sin_binary64_2220 1-sub-cos_binary64_2219 cos-sin-sum_binary64_2218 log-E_binary64_2214 log-pow_binary64_2213 log-rec_binary64_2212 log-div_binary64_2211 log-prod_binary64_2210 pow-base-0_binary64_2208 unpow1/3_binary64_2191 unpow3_binary64_2190 unpow2_binary64_2189 unpow1/2_binary64_2188 pow-plus_binary64_2187 exp-to-pow_binary64_2186 pow-base-1_binary64_2184 unpow0_binary64_2183 unpow1_binary64_2182 unpow-1_binary64_2181 exp-lft-cube_binary64_2180 exp-lft-sqr_binary64_2179 exp-cbrt_binary64_2178 exp-sqrt_binary64_2177 exp-prod_binary64_2176 div-exp_binary64_2175 rec-exp_binary64_2174 prod-exp_binary64_2173 exp-diff_binary64_2172 exp-neg_binary64_2171 exp-sum_binary64_2170 e-exp-1_binary64_2169 exp-1-e_binary64_2167 exp-0_binary64_2166 rem-log-exp_binary64_2165 rem-exp-log_binary64_2164 cube-unmult_binary64_2161 cube-mult_binary64_2154 cube-div_binary64_2153 cube-prod_binary64_2152 cube-neg_binary64_2151 rem-3cbrt-rft_binary64_2150 rem-3cbrt-lft_binary64_2149 rem-cbrt-cube_binary64_2148 rem-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 sqr-neg_binary64_2138 rem-sqrt-square_binary64_2137 rem-square-sqrt_binary64_2136 times-frac_binary64_2130 div-sub_binary64_2129 mul-1-neg_binary64_2116 /-rgt-identity_binary64_2115 mul0-rgt_binary64_2107 mul0-lft_binary64_2106 div0_binary64_2105 *-inverses_binary64_2104 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 rgt-mult-inverse_binary64_2101 remove-double-div_binary64_2100 pow-sqr_binary64_2097 sqr-pow_binary64_2096 difference-of-sqr--1_binary64_2095 difference-of-sqr-1_binary64_2094 difference-of-squares_binary64_2093 unswap-sqr_binary64_2092 swap-sqr_binary64_2091 cancel-sign-sub_binary64_2089 distribute-neg-frac_binary64_2088 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 distribute-rgt1-in_binary64_2080 distribute-lft1-in_binary64_2079 distribute-rgt-out--_binary64_2078 distribute-rgt-out_binary64_2077 distribute-lft-out--_binary64_2076 distribute-lft-out_binary64_2075 count-2_binary64_2072 associate-/l/_binary64_2071 associate-/r/_binary64_2070 associate-/l*_binary64_2069 associate-/r*_binary64_2068 associate-*l/_binary64_2067 associate-*r/_binary64_2066 associate-*l*_binary64_2065 associate-*r*_binary64_2064 associate--l-_binary64_2062
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11011
21511
32111
42711
54211
66511
77811
89011
99211
108611
117211

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 7 to 6 computations (14.3% saved)

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

2.2b
(-.f64 (tan.f64 (+.f64 x eps)) (tan.f64 x))
2.8b
(tan.f64 (+.f64 x eps))

rewrite44.0ms (0.3%)

Algorithm
rewrite-expression-head
Error
21.2b
Rules
add-sqr-sqrt_binary64_2146 *-un-lft-identity_binary64_2124
tan-quot_binary64_2283 add-log-exp_binary64_2163
add-cube-cbrt_binary64_2159 cancel-sign-sub-inv_binary64_2090
tan-sum_binary64_2259 pow1_binary64_2185 add-exp-log_binary64_2162 add-cbrt-cube_binary64_2160 frac-sub_binary64_2133
diff-log_binary64_2216 flip3--_binary64_2128 sub-neg_binary64_2117 flip--_binary64_2099 difference-of-squares_binary64_2093 distribute-lft-out--_binary64_2076
Counts
2 → 27
Calls

2 calls:

7.0ms
(-.f64 (tan.f64 (+.f64 x eps)) (tan.f64 x))
4.0ms
(tan.f64 (+.f64 x eps))
Compiler

Compiled 416 to 108 computations (74% saved)

series664.0ms (4.1%)

Error
13.9b
Counts
2 → 21
Calls

2 calls:

388.0ms
(-.f64 (tan.f64 (+.f64 x eps)) (tan.f64 x))
239.0ms
(tan.f64 (+.f64 x eps))
Compiler

Compiled 1432 to 839 computations (41.4% saved)

simplify96.0ms (0.6%)

Algorithm
egg-herbie
Rules
497×associate-+l+_binary64_2057
469×times-frac_binary64_2130
449×associate-+r+_binary64_2056
348×associate-/l*_binary64_2069
292×associate-*r*_binary64_2064
279×associate-*l*_binary64_2065
173×associate-/r*_binary64_2068
76×+-commutative_binary64_2054
73×unswap-sqr_binary64_2092
57×associate-/r/_binary64_2070
51×associate-*l/_binary64_2067
46×distribute-lft-in_binary64_2073
45×distribute-rgt-in_binary64_2074
43×associate-*r/_binary64_2066
42×sqr-pow_binary64_2096
38×associate-/l/_binary64_2071
33×unpow3_binary64_2190
27×*-commutative_binary64_2055
25×cube-prod_binary64_2152
24×exp-prod_binary64_2176
23×sub-neg_binary64_2117
19×cube-unmult_binary64_2161
18×pow-plus_binary64_2187 neg-mul-1_binary64_2120 distribute-rgt-neg-in_binary64_2082
16×neg-sub0_binary64_2119
12×exp-sum_binary64_2170 distribute-lft-neg-in_binary64_2081
11×cancel-sign-sub-inv_binary64_2090 distribute-lft-neg-out_binary64_2083 distribute-rgt-out_binary64_2077
associate-+l-_binary64_2059
cube-mult_binary64_2154 rem-sqrt-square_binary64_2137 associate-+r-_binary64_2058
unpow2_binary64_2189 unpow1/2_binary64_2188 unpow1_binary64_2182 exp-diff_binary64_2172 distribute-neg-in_binary64_2085 distribute-rgt-neg-out_binary64_2084
associate--r+_binary64_2060
associate--l+_binary64_2061
*-rgt-identity_binary64_2114 *-lft-identity_binary64_2113 difference-of-squares_binary64_2093 distribute-rgt1-in_binary64_2080
div-sub_binary64_2129 +-rgt-identity_binary64_2109 swap-sqr_binary64_2091 distribute-lft-out_binary64_2075
div-exp_binary64_2175 1-exp_binary64_2168 rem-3cbrt-lft_binary64_2149 sqr-neg_binary64_2138 rem-square-sqrt_binary64_2136 unsub-neg_binary64_2118 remove-double-neg_binary64_2112 distribute-neg-frac_binary64_2088
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_2387 erf-erfc_binary64_2386 erf-odd_binary64_2385 if-if-and-not_binary64_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 not-gte_binary64_2376 not-lte_binary64_2375 not-gt_binary64_2374 not-lt_binary64_2373 gte-same_binary64_2372 lte-same_binary64_2371 gt-same_binary64_2370 lt-same_binary64_2369 sinh---cosh_binary64_2316 sinh-+-cosh_binary64_2315 sinh-cosh_binary64_2314 tanh-def-c_binary64_2313 tanh-def-b_binary64_2312 tanh-def-a_binary64_2311 cosh-def_binary64_2310 sinh-def_binary64_2309 tan-neg_binary64_2256 cos-neg_binary64_2255 sin-neg_binary64_2254 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 hang-m-tan_binary64_2250 hang-p-tan_binary64_2249 hang-m0-tan_binary64_2248 hang-p0-tan_binary64_2247 hang-0m-tan_binary64_2246 hang-0p-tan_binary64_2245 tan-+PI/2_binary64_2244 tan-+PI_binary64_2243 tan-PI_binary64_2242 tan-PI/3_binary64_2241 tan-PI/4_binary64_2240 tan-PI/6_binary64_2239 cos-+PI/2_binary64_2238 cos-+PI_binary64_2237 cos-PI_binary64_2236 cos-PI/2_binary64_2235 cos-PI/3_binary64_2234 cos-PI/4_binary64_2233 cos-PI/6_binary64_2232 sin-+PI/2_binary64_2231 sin-+PI_binary64_2230 sin-PI_binary64_2229 sin-PI/2_binary64_2228 sin-PI/3_binary64_2227 sin-PI/4_binary64_2226 sin-PI/6_binary64_2225 sub-1-sin_binary64_2224 sub-1-cos_binary64_2223 -1-add-sin_binary64_2222 -1-add-cos_binary64_2221 1-sub-sin_binary64_2220 1-sub-cos_binary64_2219 cos-sin-sum_binary64_2218 log-E_binary64_2214 log-pow_binary64_2213 log-rec_binary64_2212 log-div_binary64_2211 log-prod_binary64_2210 pow-base-0_binary64_2208 unpow1/3_binary64_2191 exp-to-pow_binary64_2186 pow-base-1_binary64_2184 unpow0_binary64_2183 unpow-1_binary64_2181 exp-lft-cube_binary64_2180 exp-lft-sqr_binary64_2179 exp-cbrt_binary64_2178 exp-sqrt_binary64_2177 rec-exp_binary64_2174 prod-exp_binary64_2173 exp-neg_binary64_2171 e-exp-1_binary64_2169 exp-1-e_binary64_2167 exp-0_binary64_2166 rem-log-exp_binary64_2165 rem-exp-log_binary64_2164 cube-div_binary64_2153 cube-neg_binary64_2151 rem-3cbrt-rft_binary64_2150 rem-cbrt-cube_binary64_2148 rem-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 mul-1-neg_binary64_2116 /-rgt-identity_binary64_2115 sub0-neg_binary64_2111 --rgt-identity_binary64_2110 +-lft-identity_binary64_2108 mul0-rgt_binary64_2107 mul0-lft_binary64_2106 div0_binary64_2105 *-inverses_binary64_2104 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 rgt-mult-inverse_binary64_2101 remove-double-div_binary64_2100 pow-sqr_binary64_2097 difference-of-sqr--1_binary64_2095 difference-of-sqr-1_binary64_2094 cancel-sign-sub_binary64_2089 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 distribute-lft1-in_binary64_2079 distribute-rgt-out--_binary64_2078 distribute-lft-out--_binary64_2076 count-2_binary64_2072 associate--r-_binary64_2063 associate--l-_binary64_2062
Counts
48 → 39
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01321248
13371225
29841174
349161162
449761156
549761156

prune63.0ms (0.4%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New37239
Fresh000
Picked011
Done000
Total37340
Error
0.3b
Counts
40 → 3
Compiler

Compiled 866 to 297 computations (65.7% saved)

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (cos.f64 x) (+.f64 (tan.f64 x) (tan.f64 eps)))
0.2b
(*.f64 (tan.f64 x) (tan.f64 eps))
0.2b
(*.f64 (tan.f64 x) (tan.f64 eps))
8.4b
(-.f64 (*.f64 (cos.f64 x) (+.f64 (tan.f64 x) (tan.f64 eps))) (*.f64 (sin.f64 x) (-.f64 1 (*.f64 (tan.f64 x) (tan.f64 eps)))))

rewrite211.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
17×associate-*r/_binary64_2066
16×add-sqr-sqrt_binary64_2146
14×tan-quot_binary64_2283
12×*-un-lft-identity_binary64_2124
10×pow1_binary64_2185 add-exp-log_binary64_2162 add-cbrt-cube_binary64_2160 add-cube-cbrt_binary64_2159 associate-*r*_binary64_2064
associate-*l*_binary64_2065
add-log-exp_binary64_2163 frac-sub_binary64_2133
flip3--_binary64_2128 flip--_binary64_2099 distribute-rgt-in_binary64_2074 distribute-lft-in_binary64_2073 associate--r+_binary64_2060
frac-add_binary64_2132 flip3-+_binary64_2127 flip-+_binary64_2098 sub-neg_binary64_2117 cancel-sign-sub-inv_binary64_2090 pow-prod-down_binary64_2195 prod-exp_binary64_2173 cbrt-unprod_binary64_2157 unswap-sqr_binary64_2092 *-commutative_binary64_2055
associate--l+_binary64_2061 frac-times_binary64_2134 associate-*l/_binary64_2067
diff-log_binary64_2216 distribute-lft-out_binary64_2075
Counts
4 → 90
Calls

4 calls:

11.0ms
(-.f64 (*.f64 (cos.f64 x) (+.f64 (tan.f64 x) (tan.f64 eps))) (*.f64 (sin.f64 x) (-.f64 1 (*.f64 (tan.f64 x) (tan.f64 eps)))))
9.0ms
(*.f64 (cos.f64 x) (+.f64 (tan.f64 x) (tan.f64 eps)))
6.0ms
(*.f64 (tan.f64 x) (tan.f64 eps))
6.0ms
(*.f64 (tan.f64 x) (tan.f64 eps))
Compiler

Compiled 3748 to 1063 computations (71.6% saved)

series2.0s (12.3%)

Error
0.1b
Counts
4 → 38
Calls

4 calls:

960.0ms
(-.f64 (*.f64 (cos.f64 x) (+.f64 (tan.f64 x) (tan.f64 eps))) (*.f64 (sin.f64 x) (-.f64 1 (*.f64 (tan.f64 x) (tan.f64 eps)))))
348.0ms
(*.f64 (cos.f64 x) (+.f64 (tan.f64 x) (tan.f64 eps)))
344.0ms
(*.f64 (tan.f64 x) (tan.f64 eps))
281.0ms
(*.f64 (tan.f64 x) (tan.f64 eps))
Compiler

Compiled 3656 to 1899 computations (48.1% saved)

simplify201.0ms (1.2%)

Algorithm
egg-herbie
Rules
492×times-frac_binary64_2130
302×associate-*l*_binary64_2065
295×associate-*r*_binary64_2064
275×cancel-sign-sub-inv_binary64_2090
244×distribute-rgt-neg-in_binary64_2082
218×neg-mul-1_binary64_2120 neg-sub0_binary64_2119
193×distribute-lft-neg-in_binary64_2081
179×distribute-rgt-in_binary64_2074
178×*-commutative_binary64_2055
174×distribute-lft-in_binary64_2073
111×unsub-neg_binary64_2118
105×exp-prod_binary64_2176
104×+-commutative_binary64_2054
98×sub-neg_binary64_2117
80×distribute-rgt-out_binary64_2077 associate-+r+_binary64_2056
73×associate-+l+_binary64_2057
71×associate-/l*_binary64_2069
66×/-rgt-identity_binary64_2115
64×sqr-pow_binary64_2096
61×unswap-sqr_binary64_2092
58×distribute-lft-out_binary64_2075
57×*-lft-identity_binary64_2113
53×distribute-neg-in_binary64_2085
52×distribute-lft-neg-out_binary64_2083
48×associate-/r*_binary64_2068
44×log-prod_binary64_2210
40×cube-prod_binary64_2152
37×*-rgt-identity_binary64_2114
32×remove-double-neg_binary64_2112
25×distribute-rgt-neg-out_binary64_2084 associate-*r/_binary64_2066
23×exp-sum_binary64_2170
21×associate-*l/_binary64_2067
20×unpow3_binary64_2190 associate--l+_binary64_2061
17×swap-sqr_binary64_2091
15×pow-sqr_binary64_2097
14×associate-/r/_binary64_2070
10×exp-diff_binary64_2172 distribute-rgt-out--_binary64_2078
cube-mult_binary64_2154
distribute-lft-out--_binary64_2076
distribute-neg-frac_binary64_2088
unpow1/2_binary64_2188 exp-neg_binary64_2171 cube-unmult_binary64_2161 remove-double-div_binary64_2100
pow-plus_binary64_2187 div-sub_binary64_2129 distribute-rgt1-in_binary64_2080
difference-of-squares_binary64_2093 associate--r+_binary64_2060 associate-+r-_binary64_2058
unpow2_binary64_2189 unpow1_binary64_2182 cube-div_binary64_2153 cube-neg_binary64_2151 sqr-neg_binary64_2138 rem-sqrt-square_binary64_2137 +-rgt-identity_binary64_2109 distribute-lft1-in_binary64_2079
log-div_binary64_2211 unpow-1_binary64_2181 div-exp_binary64_2175 1-exp_binary64_2168 exp-1-e_binary64_2167 *-inverses_binary64_2104 associate-+l-_binary64_2059
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_2387 erf-erfc_binary64_2386 erf-odd_binary64_2385 if-if-and-not_binary64_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 not-gte_binary64_2376 not-lte_binary64_2375 not-gt_binary64_2374 not-lt_binary64_2373 gte-same_binary64_2372 lte-same_binary64_2371 gt-same_binary64_2370 lt-same_binary64_2369 sinh---cosh_binary64_2316 sinh-+-cosh_binary64_2315 sinh-cosh_binary64_2314 tanh-def-c_binary64_2313 tanh-def-b_binary64_2312 tanh-def-a_binary64_2311 cosh-def_binary64_2310 sinh-def_binary64_2309 tan-neg_binary64_2256 cos-neg_binary64_2255 sin-neg_binary64_2254 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 hang-m-tan_binary64_2250 hang-p-tan_binary64_2249 hang-m0-tan_binary64_2248 hang-p0-tan_binary64_2247 hang-0m-tan_binary64_2246 hang-0p-tan_binary64_2245 tan-+PI/2_binary64_2244 tan-+PI_binary64_2243 tan-PI_binary64_2242 tan-PI/3_binary64_2241 tan-PI/4_binary64_2240 tan-PI/6_binary64_2239 cos-+PI/2_binary64_2238 cos-+PI_binary64_2237 cos-PI_binary64_2236 cos-PI/2_binary64_2235 cos-PI/3_binary64_2234 cos-PI/4_binary64_2233 cos-PI/6_binary64_2232 sin-+PI/2_binary64_2231 sin-+PI_binary64_2230 sin-PI_binary64_2229 sin-PI/2_binary64_2228 sin-PI/3_binary64_2227 sin-PI/4_binary64_2226 sin-PI/6_binary64_2225 sub-1-sin_binary64_2224 sub-1-cos_binary64_2223 -1-add-sin_binary64_2222 -1-add-cos_binary64_2221 1-sub-sin_binary64_2220 1-sub-cos_binary64_2219 cos-sin-sum_binary64_2218 log-E_binary64_2214 log-pow_binary64_2213 log-rec_binary64_2212 pow-base-0_binary64_2208 unpow1/3_binary64_2191 exp-to-pow_binary64_2186 pow-base-1_binary64_2184 unpow0_binary64_2183 exp-lft-cube_binary64_2180 exp-lft-sqr_binary64_2179 exp-cbrt_binary64_2178 exp-sqrt_binary64_2177 rec-exp_binary64_2174 prod-exp_binary64_2173 e-exp-1_binary64_2169 exp-0_binary64_2166 rem-log-exp_binary64_2165 rem-exp-log_binary64_2164 rem-3cbrt-rft_binary64_2150 rem-3cbrt-lft_binary64_2149 rem-cbrt-cube_binary64_2148 rem-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 rem-square-sqrt_binary64_2136 mul-1-neg_binary64_2116 sub0-neg_binary64_2111 --rgt-identity_binary64_2110 +-lft-identity_binary64_2108 mul0-rgt_binary64_2107 mul0-lft_binary64_2106 div0_binary64_2105 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 rgt-mult-inverse_binary64_2101 difference-of-sqr--1_binary64_2095 difference-of-sqr-1_binary64_2094 cancel-sign-sub_binary64_2089 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 count-2_binary64_2072 associate-/l/_binary64_2071 associate--r-_binary64_2063 associate--l-_binary64_2062
Counts
128 → 76
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02593368
17963283
229333212
344093192
449803192
550003192
649603192

prune182.0ms (1.1%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New651176
Fresh011
Picked101
Done101
Total671279
Error
0.1b
Counts
79 → 12
Compiler

Compiled 3720 to 1315 computations (64.7% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))
0.2b
(*.f64 (/.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (cos.f64 x) (/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))))
0.2b
(*.f64 (tan.f64 x) (tan.f64 eps))
0.3b
(pow.f64 (sin.f64 x) 2)

rewrite282.0ms (1.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
40×add-sqr-sqrt_binary64_2146
35×*-un-lft-identity_binary64_2124
34×times-frac_binary64_2130
33×add-cube-cbrt_binary64_2159
17×add-exp-log_binary64_2162
16×associate-*l*_binary64_2065
15×unpow-prod-down_binary64_2203
13×add-cbrt-cube_binary64_2160
pow1_binary64_2185
associate-/l*_binary64_2069
associate-*r*_binary64_2064
unpow2_binary64_2189 sqr-pow_binary64_2096
add-log-exp_binary64_2163 tan-quot_binary64_2283 div-exp_binary64_2175
pow-unpow_binary64_2201 prod-exp_binary64_2173 cbrt-unprod_binary64_2157 frac-times_binary64_2134 unswap-sqr_binary64_2092 associate-*r/_binary64_2066 associate-/r*_binary64_2068
pow-to-exp_binary64_2193 pow-exp_binary64_2192 pow-prod-down_binary64_2195 associate-*l/_binary64_2067 *-commutative_binary64_2055 cbrt-undiv_binary64_2158 flip3-+_binary64_2127 flip-+_binary64_2098 div-inv_binary64_2121
pow-pow_binary64_2196 distribute-rgt-in_binary64_2074 distribute-lft-in_binary64_2073 distribute-lft-out_binary64_2075 frac-2neg_binary64_2135 clear-num_binary64_2123
Counts
4 → 127
Calls

4 calls:

19.0ms
(*.f64 (/.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (cos.f64 x) (/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))))
6.0ms
(*.f64 (tan.f64 x) (tan.f64 eps))
6.0ms
(/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))
5.0ms
(pow.f64 (sin.f64 x) 2)
Compiler

Compiled 4598 to 1725 computations (62.5% saved)

series1.0s (6.2%)

Error
0.1b
Counts
4 → 30
Calls

4 calls:

556.0ms
(*.f64 (/.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (cos.f64 x) (/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))))
261.0ms
(*.f64 (tan.f64 x) (tan.f64 eps))
88.0ms
(/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))
47.0ms
(pow.f64 (sin.f64 x) 2)
Compiler

Compiled 2522 to 1455 computations (42.3% saved)

simplify111.0ms (0.7%)

Algorithm
egg-herbie
Rules
657×associate-/l*_binary64_2069
323×distribute-rgt-in_binary64_2074
308×distribute-lft-in_binary64_2073
253×times-frac_binary64_2130
188×associate-/r/_binary64_2070
168×associate-/l/_binary64_2071
160×associate-*l*_binary64_2065
156×*-commutative_binary64_2055
153×associate-*r*_binary64_2064
123×associate-*l/_binary64_2067
98×associate-*r/_binary64_2066
74×+-commutative_binary64_2054
73×associate-+r+_binary64_2056
64×sqr-pow_binary64_2096
54×unswap-sqr_binary64_2092
49×cancel-sign-sub-inv_binary64_2090 associate-+l+_binary64_2057
36×sub-neg_binary64_2117
33×associate-/r*_binary64_2068
32×exp-prod_binary64_2176
28×distribute-rgt-neg-in_binary64_2082
27×*-rgt-identity_binary64_2114
24×log-prod_binary64_2210
23×distribute-lft-neg-in_binary64_2081
19×*-lft-identity_binary64_2113
17×neg-mul-1_binary64_2120 neg-sub0_binary64_2119 distribute-neg-frac_binary64_2088
16×swap-sqr_binary64_2091 distribute-rgt-out_binary64_2077
15×cube-prod_binary64_2152
14×log-div_binary64_2211
12×cube-unmult_binary64_2161 cube-div_binary64_2153
10×pow-sqr_binary64_2097 distribute-lft-neg-out_binary64_2083
/-rgt-identity_binary64_2115
exp-sum_binary64_2170 distribute-lft-out_binary64_2075
unpow3_binary64_2190 associate--l+_binary64_2061
log-pow_binary64_2213 unpow2_binary64_2189 unpow1/2_binary64_2188 unpow1_binary64_2182 distribute-rgt-neg-out_binary64_2084
pow-plus_binary64_2187 cube-mult_binary64_2154 associate--r+_binary64_2060
unsub-neg_binary64_2118 distribute-neg-in_binary64_2085
rem-sqrt-square_binary64_2137 div-sub_binary64_2129 distribute-rgt1-in_binary64_2080 distribute-rgt-out--_binary64_2078 associate-+l-_binary64_2059 associate-+r-_binary64_2058
1-exp_binary64_2168 exp-1-e_binary64_2167 rem-3cbrt-rft_binary64_2150 rem-square-sqrt_binary64_2136 difference-of-squares_binary64_2093
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_2387 erf-erfc_binary64_2386 erf-odd_binary64_2385 if-if-and-not_binary64_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 not-gte_binary64_2376 not-lte_binary64_2375 not-gt_binary64_2374 not-lt_binary64_2373 gte-same_binary64_2372 lte-same_binary64_2371 gt-same_binary64_2370 lt-same_binary64_2369 sinh---cosh_binary64_2316 sinh-+-cosh_binary64_2315 sinh-cosh_binary64_2314 tanh-def-c_binary64_2313 tanh-def-b_binary64_2312 tanh-def-a_binary64_2311 cosh-def_binary64_2310 sinh-def_binary64_2309 tan-neg_binary64_2256 cos-neg_binary64_2255 sin-neg_binary64_2254 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 hang-m-tan_binary64_2250 hang-p-tan_binary64_2249 hang-m0-tan_binary64_2248 hang-p0-tan_binary64_2247 hang-0m-tan_binary64_2246 hang-0p-tan_binary64_2245 tan-+PI/2_binary64_2244 tan-+PI_binary64_2243 tan-PI_binary64_2242 tan-PI/3_binary64_2241 tan-PI/4_binary64_2240 tan-PI/6_binary64_2239 cos-+PI/2_binary64_2238 cos-+PI_binary64_2237 cos-PI_binary64_2236 cos-PI/2_binary64_2235 cos-PI/3_binary64_2234 cos-PI/4_binary64_2233 cos-PI/6_binary64_2232 sin-+PI/2_binary64_2231 sin-+PI_binary64_2230 sin-PI_binary64_2229 sin-PI/2_binary64_2228 sin-PI/3_binary64_2227 sin-PI/4_binary64_2226 sin-PI/6_binary64_2225 sub-1-sin_binary64_2224 sub-1-cos_binary64_2223 -1-add-sin_binary64_2222 -1-add-cos_binary64_2221 1-sub-sin_binary64_2220 1-sub-cos_binary64_2219 cos-sin-sum_binary64_2218 log-E_binary64_2214 log-rec_binary64_2212 pow-base-0_binary64_2208 unpow1/3_binary64_2191 exp-to-pow_binary64_2186 pow-base-1_binary64_2184 unpow0_binary64_2183 unpow-1_binary64_2181 exp-lft-cube_binary64_2180 exp-lft-sqr_binary64_2179 exp-cbrt_binary64_2178 exp-sqrt_binary64_2177 div-exp_binary64_2175 rec-exp_binary64_2174 prod-exp_binary64_2173 exp-diff_binary64_2172 exp-neg_binary64_2171 e-exp-1_binary64_2169 exp-0_binary64_2166 rem-log-exp_binary64_2165 rem-exp-log_binary64_2164 cube-neg_binary64_2151 rem-3cbrt-lft_binary64_2149 rem-cbrt-cube_binary64_2148 rem-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 sqr-neg_binary64_2138 mul-1-neg_binary64_2116 remove-double-neg_binary64_2112 sub0-neg_binary64_2111 --rgt-identity_binary64_2110 +-rgt-identity_binary64_2109 +-lft-identity_binary64_2108 mul0-rgt_binary64_2107 mul0-lft_binary64_2106 div0_binary64_2105 *-inverses_binary64_2104 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 rgt-mult-inverse_binary64_2101 remove-double-div_binary64_2100 difference-of-sqr--1_binary64_2095 difference-of-sqr-1_binary64_2094 cancel-sign-sub_binary64_2089 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 distribute-lft1-in_binary64_2079 distribute-lft-out--_binary64_2076 count-2_binary64_2072 associate--r-_binary64_2063 associate--l-_binary64_2062
Counts
157 → 97
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03073675
17923277
222363257
351313257

prune213.0ms (1.3%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New89897
Fresh6511
Picked101
Done000
Total9613109
Error
0.0b
Counts
109 → 13
Compiler

Compiled 3953 to 1565 computations (60.4% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (/.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (cos.f64 x) (/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))))
0.2b
(*.f64 (sin.f64 x) (sin.f64 eps))
0.3b
(/.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x)))
0.3b
(pow.f64 (sin.f64 x) 2)

rewrite228.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
24×add-exp-log_binary64_2162
23×add-sqr-sqrt_binary64_2146 add-cbrt-cube_binary64_2160
18×*-un-lft-identity_binary64_2124
16×add-cube-cbrt_binary64_2159 associate-*l*_binary64_2065
11×times-frac_binary64_2130
pow1_binary64_2185
prod-exp_binary64_2173 cbrt-unprod_binary64_2157 associate-*r*_binary64_2064
div-exp_binary64_2175 cbrt-undiv_binary64_2158
add-log-exp_binary64_2163
unpow-prod-down_binary64_2203 pow-unpow_binary64_2201 unswap-sqr_binary64_2092
div-inv_binary64_2121 sin-mult_binary64_2279 pow-prod-down_binary64_2195 *-commutative_binary64_2055 flip3-+_binary64_2127 frac-times_binary64_2134 flip-+_binary64_2098 associate-*r/_binary64_2066
pow-pow_binary64_2196 pow-to-exp_binary64_2193 pow-exp_binary64_2192 unpow2_binary64_2189 sqr-pow_binary64_2096 frac-2neg_binary64_2135 clear-num_binary64_2123 associate-/l/_binary64_2071 cos-mult_binary64_2278 associate-/r/_binary64_2070 associate-/l*_binary64_2069 associate-/r*_binary64_2068 distribute-rgt-in_binary64_2074 distribute-lft-in_binary64_2073 associate-*l/_binary64_2067 distribute-lft-out_binary64_2075
Counts
4 → 99
Calls

4 calls:

19.0ms
(*.f64 (/.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (cos.f64 x) (/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))))
8.0ms
(/.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x)))
5.0ms
(*.f64 (sin.f64 x) (sin.f64 eps))
3.0ms
(pow.f64 (sin.f64 x) 2)
Compiler

Compiled 4192 to 1328 computations (68.3% saved)

series1.1s (6.5%)

Error
0.0b
Counts
4 → 32
Calls

4 calls:

547.0ms
(*.f64 (/.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (cos.f64 x) (/.f64 (pow.f64 (sin.f64 x) 2) (cos.f64 x))))
279.0ms
(/.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x)))
134.0ms
(*.f64 (sin.f64 x) (sin.f64 eps))
42.0ms
(pow.f64 (sin.f64 x) 2)
Compiler

Compiled 3144 to 1604 computations (49% saved)

simplify128.0ms (0.8%)

Algorithm
egg-herbie
Rules
328×distribute-rgt-in_binary64_2074
311×distribute-lft-in_binary64_2073
289×associate-/l/_binary64_2071
213×associate-*l*_binary64_2065
208×associate-*r*_binary64_2064
200×times-frac_binary64_2130
180×associate-/l*_binary64_2069
170×*-commutative_binary64_2055
128×associate-*l/_binary64_2067
110×associate-*r/_binary64_2066
99×associate-/r*_binary64_2068
93×distribute-rgt-neg-in_binary64_2082
92×unswap-sqr_binary64_2092
87×distribute-lft-neg-in_binary64_2081
84×log-div_binary64_2211 cancel-sign-sub-inv_binary64_2090
75×+-commutative_binary64_2054
68×sqr-pow_binary64_2096
66×associate-+r+_binary64_2056
60×sub-neg_binary64_2117
47×exp-prod_binary64_2176
45×associate-+l+_binary64_2057
38×log-prod_binary64_2210
34×neg-mul-1_binary64_2120 neg-sub0_binary64_2119
25×cube-prod_binary64_2152
24×swap-sqr_binary64_2091
19×*-rgt-identity_binary64_2114 *-lft-identity_binary64_2113 distribute-rgt-out_binary64_2077 associate-/r/_binary64_2070
18×cube-div_binary64_2153
12×cube-unmult_binary64_2161
11×log-pow_binary64_2213
10×pow-sqr_binary64_2097 distribute-lft-neg-out_binary64_2083 associate--l+_binary64_2061
distribute-neg-frac_binary64_2088
exp-sum_binary64_2170 associate--r+_binary64_2060
/-rgt-identity_binary64_2115 distribute-lft-out_binary64_2075
unsub-neg_binary64_2118 distribute-rgt-neg-out_binary64_2084 distribute-rgt-out--_binary64_2078
log-rec_binary64_2212 unpow3_binary64_2190 unpow2_binary64_2189 unpow1/2_binary64_2188 pow-plus_binary64_2187 unpow1_binary64_2182 distribute-neg-in_binary64_2085
cube-mult_binary64_2154
rem-sqrt-square_binary64_2137 distribute-lft-out--_binary64_2076 associate-+l-_binary64_2059 associate-+r-_binary64_2058
1-exp_binary64_2168 exp-1-e_binary64_2167 rem-3cbrt-rft_binary64_2150 rem-square-sqrt_binary64_2136 div-sub_binary64_2129 difference-of-squares_binary64_2093 distribute-rgt1-in_binary64_2080
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_2387 erf-erfc_binary64_2386 erf-odd_binary64_2385 if-if-and-not_binary64_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 not-gte_binary64_2376 not-lte_binary64_2375 not-gt_binary64_2374 not-lt_binary64_2373 gte-same_binary64_2372 lte-same_binary64_2371 gt-same_binary64_2370 lt-same_binary64_2369 sinh---cosh_binary64_2316 sinh-+-cosh_binary64_2315 sinh-cosh_binary64_2314 tanh-def-c_binary64_2313 tanh-def-b_binary64_2312 tanh-def-a_binary64_2311 cosh-def_binary64_2310 sinh-def_binary64_2309 tan-neg_binary64_2256 cos-neg_binary64_2255 sin-neg_binary64_2254 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 hang-m-tan_binary64_2250 hang-p-tan_binary64_2249 hang-m0-tan_binary64_2248 hang-p0-tan_binary64_2247 hang-0m-tan_binary64_2246 hang-0p-tan_binary64_2245 tan-+PI/2_binary64_2244 tan-+PI_binary64_2243 tan-PI_binary64_2242 tan-PI/3_binary64_2241 tan-PI/4_binary64_2240 tan-PI/6_binary64_2239 cos-+PI/2_binary64_2238 cos-+PI_binary64_2237 cos-PI_binary64_2236 cos-PI/2_binary64_2235 cos-PI/3_binary64_2234 cos-PI/4_binary64_2233 cos-PI/6_binary64_2232 sin-+PI/2_binary64_2231 sin-+PI_binary64_2230 sin-PI_binary64_2229 sin-PI/2_binary64_2228 sin-PI/3_binary64_2227 sin-PI/4_binary64_2226 sin-PI/6_binary64_2225 sub-1-sin_binary64_2224 sub-1-cos_binary64_2223 -1-add-sin_binary64_2222 -1-add-cos_binary64_2221 1-sub-sin_binary64_2220 1-sub-cos_binary64_2219 cos-sin-sum_binary64_2218 log-E_binary64_2214 pow-base-0_binary64_2208 unpow1/3_binary64_2191 exp-to-pow_binary64_2186 pow-base-1_binary64_2184 unpow0_binary64_2183 unpow-1_binary64_2181 exp-lft-cube_binary64_2180 exp-lft-sqr_binary64_2179 exp-cbrt_binary64_2178 exp-sqrt_binary64_2177 div-exp_binary64_2175 rec-exp_binary64_2174 prod-exp_binary64_2173 exp-diff_binary64_2172 exp-neg_binary64_2171 e-exp-1_binary64_2169 exp-0_binary64_2166 rem-log-exp_binary64_2165 rem-exp-log_binary64_2164 cube-neg_binary64_2151 rem-3cbrt-lft_binary64_2149 rem-cbrt-cube_binary64_2148 rem-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 sqr-neg_binary64_2138 mul-1-neg_binary64_2116 remove-double-neg_binary64_2112 sub0-neg_binary64_2111 --rgt-identity_binary64_2110 +-rgt-identity_binary64_2109 +-lft-identity_binary64_2108 mul0-rgt_binary64_2107 mul0-lft_binary64_2106 div0_binary64_2105 *-inverses_binary64_2104 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 rgt-mult-inverse_binary64_2101 remove-double-div_binary64_2100 difference-of-sqr--1_binary64_2095 difference-of-sqr-1_binary64_2094 cancel-sign-sub_binary64_2089 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 distribute-lft1-in_binary64_2079 count-2_binary64_2072 associate--r-_binary64_2063 associate--l-_binary64_2062
Counts
131 → 77
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02713270
18192821
228382791
349762791
449902791

prune135.0ms (0.8%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New77077
Fresh01212
Picked011
Done000
Total771390
Error
0.0b
Counts
90 → 13
Compiler

Compiled 3133 to 1053 computations (66.4% saved)

regimes1.9s (11.5%)

Accuracy

Total 0.4b remaining (92.8%)

Threshold costs 0.4b (92.8%)

Compiler

Compiled 21118 to 11944 computations (43.4% saved)

bsearch0.0ms (0%)

simplify5.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_2055
+-commutative_binary64_2054
sub-neg_binary64_2117
neg-mul-1_binary64_2120 neg-sub0_binary64_2119
distribute-rgt-neg-in_binary64_2082 distribute-lft-neg-in_binary64_2081
1-exp_binary64_2168 distribute-neg-frac_binary64_2088
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_2384 if-if-and_binary64_2383 if-if-or-not_binary64_2382 if-if-or_binary64_2381 if-not_binary64_2380 if-same_binary64_2379 if-false_binary64_2378 if-true_binary64_2377 tan-0_binary64_2253 cos-0_binary64_2252 sin-0_binary64_2251 unpow1_binary64_2182 e-exp-1_binary64_2169 exp-1-e_binary64_2167 exp-0_binary64_2166 sqr-abs_binary64_2139 sqr-neg_binary64_2138 unsub-neg_binary64_2118 mul-1-neg_binary64_2116 /-rgt-identity_binary64_2115 *-rgt-identity_binary64_2114 *-lft-identity_binary64_2113 remove-double-neg_binary64_2112 sub0-neg_binary64_2111 --rgt-identity_binary64_2110 +-rgt-identity_binary64_2109 +-lft-identity_binary64_2108 cancel-sign-sub-inv_binary64_2090 cancel-sign-sub_binary64_2089 distribute-frac-neg_binary64_2087 distribute-neg-out_binary64_2086 distribute-neg-in_binary64_2085 distribute-rgt-neg-out_binary64_2084 distribute-lft-neg-out_binary64_2083
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02054
12954
23554
34554
45254
55754
65954
75854

end0.0ms (0%)

sample6.7s (41.3%)

Algorithm
intervals
Results
830.0ms3456×body1024valid
527.0ms1219×body2048valid
210.0ms1408×body512valid
61.0ms616×body256valid
58.0ms1299×body128valid
2.0msbody4096valid
Compiler

Compiled 7055 to 3996 computations (43.4% saved)

Profiling

Loading profile data...