Details

Time bar (total: 1.3min)

analyze2.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
100%0%0%1
Compiler

Compiled 13 to 13 computations (0% saved)

sample37.0ms (0%)

Algorithm
intervals
Results
16.0ms67×body2048valid
5.0ms139×body128valid
5.0ms31×body1024valid
1.0msbody512valid
1.0ms10×body256valid
Compiler

Compiled 25 to 26 computations (-4% saved)

simplify105.0ms (0.1%)

Algorithm
egg-herbie
Rules
28×sub-neg_binary64_2117
18×distribute-rgt-in_binary64_2074
12×cancel-sign-sub-inv_binary64_2090 +-commutative_binary64_2054
11×neg-mul-1_binary64_2120 distribute-lft-in_binary64_2073 associate--r+_binary64_2060
10×associate-+l-_binary64_2059
neg-sub0_binary64_2119 associate-+l+_binary64_2057
distribute-neg-in_binary64_2085
--rgt-identity_binary64_2110 associate--l+_binary64_2061 *-commutative_binary64_2055
unsub-neg_binary64_2118 sub0-neg_binary64_2111 associate--r-_binary64_2063
*-rgt-identity_binary64_2114 *-lft-identity_binary64_2113
+-rgt-identity_binary64_2109 associate--l-_binary64_2062 associate-+r+_binary64_2056
distribute-lft-neg-out_binary64_2083 distribute-rgt-neg-in_binary64_2082 associate-+r-_binary64_2058
remove-double-neg_binary64_2112 +-lft-identity_binary64_2108 distribute-rgt-neg-out_binary64_2084 distribute-lft-neg-in_binary64_2081 count-2_binary64_2072
1-exp_binary64_2168 mul-1-neg_binary64_2116 distribute-neg-out_binary64_2086 distribute-lft1-in_binary64_2079 distribute-rgt-out_binary64_2077 associate-*l/_binary64_2067 associate-*r/_binary64_2066 associate-*l*_binary64_2065
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 /-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-rgt1-in_binary64_2080 distribute-rgt-out--_binary64_2078 distribute-lft-out--_binary64_2076 distribute-lft-out_binary64_2075 associate-/l/_binary64_2071 associate-/r/_binary64_2070 associate-/l*_binary64_2069 associate-/r*_binary64_2068 associate-*r*_binary64_2064
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01018
12215
22715
33315
44115
55115
66615
710315
810115
910015
109515
119615
129715
139815
149915
1510115
1610115

prune7.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 20 to 20 computations (0% saved)

localize7.0ms (0%)

Local error

Found 4 expressions with local error:

0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
0.0b
(hypot.f64 1 x)
0.0b
(/.f64 1/2 (hypot.f64 1 x))
2.6b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

rewrite116.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
14.4b
Rules
26×*-un-lft-identity_binary64_2124
24×add-sqr-sqrt_binary64_2146
15×add-cube-cbrt_binary64_2159
12×sqrt-prod_binary64_2140
times-frac_binary64_2130
cancel-sign-sub-inv_binary64_2090
add-log-exp_binary64_2163 add-exp-log_binary64_2162 add-cbrt-cube_binary64_2160
pow1_binary64_2185
difference-of-squares_binary64_2093
distribute-lft-out_binary64_2075 distribute-lft-out--_binary64_2076 associate-/l*_binary64_2069 associate-/r*_binary64_2068
sqrt-div_binary64_2141
diff-log_binary64_2216 flip3--_binary64_2128 sub-neg_binary64_2117 flip--_binary64_2099 div-exp_binary64_2175 cbrt-undiv_binary64_2158 frac-2neg_binary64_2135 clear-num_binary64_2123 div-inv_binary64_2121 pow1/2_binary64_2204 sqrt-pow1_binary64_2142 flip3-+_binary64_2127 flip-+_binary64_2098 rem-sqrt-square_binary64_2137
Counts
4 → 75
Calls

4 calls:

10.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
6.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
3.0ms
(/.f64 1/2 (hypot.f64 1 x))
1.0ms
(hypot.f64 1 x)
Compiler

Compiled 1401 to 1270 computations (9.4% saved)

series166.0ms (0.2%)

Error
14.4b
Counts
4 → 12
Calls

4 calls:

66.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
54.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
30.0ms
(/.f64 1/2 (hypot.f64 1 x))
7.0ms
(hypot.f64 1 x)
Compiler

Compiled 396 to 385 computations (2.8% saved)

simplify1.3min (99.4%)

Algorithm
egg-herbie
Rules
552×unsub-neg_binary64_2118
418×cancel-sign-sub-inv_binary64_2090
352×distribute-rgt-in_binary64_2074
284×distribute-lft-in_binary64_2073
269×times-frac_binary64_2130
230×*-commutative_binary64_2055
191×associate-/l*_binary64_2069
171×sub-neg_binary64_2117
159×associate-*l*_binary64_2065
148×associate-*r*_binary64_2064
132×associate-/r*_binary64_2068
111×neg-mul-1_binary64_2120
110×sqr-pow_binary64_2096
104×neg-sub0_binary64_2119
90×associate-+l+_binary64_2057
89×unswap-sqr_binary64_2092
88×associate-*l/_binary64_2067
87×associate-/l/_binary64_2071
85×associate-+r+_binary64_2056
79×distribute-rgt-out_binary64_2077
76×associate-/r/_binary64_2070
71×div-sub_binary64_2129
67×distribute-lft-neg-out_binary64_2083
65×exp-prod_binary64_2176 +-commutative_binary64_2054
63×distribute-rgt-neg-out_binary64_2084 associate-*r/_binary64_2066
61×distribute-rgt-neg-in_binary64_2082
55×pow-sqr_binary64_2097
53×associate-+l-_binary64_2059
52×distribute-lft-neg-in_binary64_2081
46×*-lft-identity_binary64_2113
44×*-rgt-identity_binary64_2114
38×mul0-rgt_binary64_2107 mul0-lft_binary64_2106 distribute-lft-out_binary64_2075
37×sub0-neg_binary64_2111
36×associate-+r-_binary64_2058
30×swap-sqr_binary64_2091
28×log-prod_binary64_2210 /-rgt-identity_binary64_2115
26×exp-sum_binary64_2170
25×cancel-sign-sub_binary64_2089
23×cube-prod_binary64_2152 associate--r+_binary64_2060
20×distribute-rgt-out--_binary64_2078
19×+-rgt-identity_binary64_2109
16×difference-of-squares_binary64_2093
15×distribute-neg-in_binary64_2085
13×exp-diff_binary64_2172 distribute-neg-frac_binary64_2088 distribute-rgt1-in_binary64_2080
11×cube-unmult_binary64_2161
--rgt-identity_binary64_2110
unpow3_binary64_2190 pow-plus_binary64_2187 difference-of-sqr-1_binary64_2094
log-div_binary64_2211 cube-div_binary64_2153 rem-sqrt-square_binary64_2137
remove-double-neg_binary64_2112
pow-base-1_binary64_2184 cube-mult_binary64_2154 sqr-neg_binary64_2138 mul-1-neg_binary64_2116 distribute-lft-out--_binary64_2076 associate--l+_binary64_2061
div0_binary64_2105 difference-of-sqr--1_binary64_2095
count-2_binary64_2072
log-rec_binary64_2212 rem-square-sqrt_binary64_2136 +-lft-identity_binary64_2108 distribute-neg-out_binary64_2086 associate--r-_binary64_2063
log-pow_binary64_2213 unpow1/2_binary64_2188 div-exp_binary64_2175 1-exp_binary64_2168 exp-1-e_binary64_2167 cube-neg_binary64_2151 rem-3cbrt-lft_binary64_2149 rem-cbrt-cube_binary64_2148 *-inverses_binary64_2104 rgt-mult-inverse_binary64_2101 remove-double-div_binary64_2100
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 unpow2_binary64_2189 exp-to-pow_binary64_2186 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 rec-exp_binary64_2174 prod-exp_binary64_2173 exp-neg_binary64_2171 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-cube-cbrt_binary64_2147 sqr-abs_binary64_2139 +-inverses_binary64_2103 lft-mult-inverse_binary64_2102 distribute-frac-neg_binary64_2087 distribute-lft1-in_binary64_2079 associate--l-_binary64_2062
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01201444
12431377
24941377
314261374
432851353

end0.0ms (0%)

Profiling

Loading profile data...