Details

Time bar (total: 2.7s)

analyze256.0ms (9.6%)

Algorithm
search
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
0%99.9%0.1%5
9.4%65.5%25.1%6
14%60.8%25.1%7
14%56.2%29.8%8
14%36.7%49.3%9
14.8%30.4%54.8%10
15.5%28.3%56.2%11
16.4%18.3%65.2%12
17.2%15.2%67.6%13
17.7%14.2%68.1%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample34.0ms (1.3%)

Algorithm
intervals
Results
12.0ms256×body128valid
3.0ms94×body128nan
3.0ms57×body128invalid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify424.0ms (15.9%)

Algorithm
egg-herbie
Rules
470×associate-/l/_binary64_16052
404×exp-prod_binary64_16157
370×associate-/r/_binary64_16051
299×times-frac_binary64_16111
254×distribute-rgt-in_binary64_16055
226×associate-*l/_binary64_16048
215×unswap-sqr_binary64_16073
198×cancel-sign-sub-inv_binary64_16071
189×associate--r+_binary64_16041
183×div-sub_binary64_16110
180×associate--l+_binary64_16042
177×sub-neg_binary64_16098 distribute-lft-in_binary64_16054
172×*-commutative_binary64_16036
167×distribute-rgt-out--_binary64_16059
164×exp-sum_binary64_16151
158×associate-*r/_binary64_16047
154×associate--r-_binary64_16044 associate--l-_binary64_16043
153×swap-sqr_binary64_16072
151×sqr-pow_binary64_16077
139×associate-/l*_binary64_16050
138×distribute-rgt-out_binary64_16058
120×unsub-neg_binary64_16099
114×distribute-rgt-neg-in_binary64_16063
100×associate-/r*_binary64_16049
99×associate-*l*_binary64_16046
92×associate-*r*_binary64_16045
82×exp-diff_binary64_16153 pow-sqr_binary64_16078
67×*-lft-identity_binary64_16094
55×distribute-neg-in_binary64_16066
53×distribute-frac-neg_binary64_16068
50×distribute-lft-neg-out_binary64_16064
47×neg-mul-1_binary64_16101
46×distribute-rgt-neg-out_binary64_16065
40×distribute-lft-neg-in_binary64_16062
39×neg-sub0_binary64_16100
33×*-rgt-identity_binary64_16095
31×/-rgt-identity_binary64_16096
30×associate-+l+_binary64_16038
29×associate-+l-_binary64_16040
25×distribute-neg-out_binary64_16067 +-commutative_binary64_16035
24×cube-prod_binary64_16133
23×associate-+r+_binary64_16037
21×pow-plus_binary64_16168
19×distribute-rgt1-in_binary64_16061
16×remove-double-div_binary64_16081
14×associate-+r-_binary64_16039
13×div-exp_binary64_16156
12×remove-double-neg_binary64_16093
11×+-inverses_binary64_16084
10×cube-unmult_binary64_16142 sub0-neg_binary64_16092
prod-exp_binary64_16154 +-lft-identity_binary64_16089
+-rgt-identity_binary64_16090 mul0-lft_binary64_16087 count-2_binary64_16053
exp-to-pow_binary64_16167 exp-lft-sqr_binary64_16160
log-prod_binary64_16191 cube-div_binary64_16134 mul0-rgt_binary64_16088 difference-of-sqr--1_binary64_16076 distribute-lft1-in_binary64_16060
pow-base-1_binary64_16165 exp-neg_binary64_16152 div0_binary64_16086 difference-of-squares_binary64_16074 distribute-lft-out--_binary64_16057 distribute-lft-out_binary64_16056
exp-sqrt_binary64_16158 sqr-neg_binary64_16119 --rgt-identity_binary64_16091 difference-of-sqr-1_binary64_16075
1-exp_binary64_16149 exp-1-e_binary64_16148 rem-exp-log_binary64_16145 cube-neg_binary64_16132 *-inverses_binary64_16085 distribute-neg-frac_binary64_16069
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_16368 erf-erfc_binary64_16367 erf-odd_binary64_16366 if-if-and-not_binary64_16365 if-if-and_binary64_16364 if-if-or-not_binary64_16363 if-if-or_binary64_16362 if-not_binary64_16361 if-same_binary64_16360 if-false_binary64_16359 if-true_binary64_16358 not-gte_binary64_16357 not-lte_binary64_16356 not-gt_binary64_16355 not-lt_binary64_16354 gte-same_binary64_16353 lte-same_binary64_16352 gt-same_binary64_16351 lt-same_binary64_16350 sinh---cosh_binary64_16297 sinh-+-cosh_binary64_16296 sinh-cosh_binary64_16295 tanh-def-c_binary64_16294 tanh-def-b_binary64_16293 tanh-def-a_binary64_16292 cosh-def_binary64_16291 sinh-def_binary64_16290 tan-neg_binary64_16237 cos-neg_binary64_16236 sin-neg_binary64_16235 tan-0_binary64_16234 cos-0_binary64_16233 sin-0_binary64_16232 hang-m-tan_binary64_16231 hang-p-tan_binary64_16230 hang-m0-tan_binary64_16229 hang-p0-tan_binary64_16228 hang-0m-tan_binary64_16227 hang-0p-tan_binary64_16226 tan-+PI/2_binary64_16225 tan-+PI_binary64_16224 tan-PI_binary64_16223 tan-PI/3_binary64_16222 tan-PI/4_binary64_16221 tan-PI/6_binary64_16220 cos-+PI/2_binary64_16219 cos-+PI_binary64_16218 cos-PI_binary64_16217 cos-PI/2_binary64_16216 cos-PI/3_binary64_16215 cos-PI/4_binary64_16214 cos-PI/6_binary64_16213 sin-+PI/2_binary64_16212 sin-+PI_binary64_16211 sin-PI_binary64_16210 sin-PI/2_binary64_16209 sin-PI/3_binary64_16208 sin-PI/4_binary64_16207 sin-PI/6_binary64_16206 sub-1-sin_binary64_16205 sub-1-cos_binary64_16204 -1-add-sin_binary64_16203 -1-add-cos_binary64_16202 1-sub-sin_binary64_16201 1-sub-cos_binary64_16200 cos-sin-sum_binary64_16199 log-E_binary64_16195 log-pow_binary64_16194 log-rec_binary64_16193 log-div_binary64_16192 pow-base-0_binary64_16189 unpow1/3_binary64_16172 unpow3_binary64_16171 unpow2_binary64_16170 unpow1/2_binary64_16169 unpow0_binary64_16164 unpow1_binary64_16163 unpow-1_binary64_16162 exp-lft-cube_binary64_16161 exp-cbrt_binary64_16159 rec-exp_binary64_16155 e-exp-1_binary64_16150 exp-0_binary64_16147 rem-log-exp_binary64_16146 cube-mult_binary64_16135 rem-3cbrt-rft_binary64_16131 rem-3cbrt-lft_binary64_16130 rem-cbrt-cube_binary64_16129 rem-cube-cbrt_binary64_16128 sqr-abs_binary64_16120 rem-sqrt-square_binary64_16118 rem-square-sqrt_binary64_16117 mul-1-neg_binary64_16097 lft-mult-inverse_binary64_16083 rgt-mult-inverse_binary64_16082 cancel-sign-sub_binary64_16070
Counts
1 → 3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0914
11814
23712
37412
411912
526112
675012
7165912
8358012

prune6.0ms (0.2%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New303
Fresh011
Picked000
Done000
Total314
Error
0b
Counts
4 → 1
Compiler

Compiled 34 to 23 computations (32.4% saved)

localize8.0ms (0.3%)

Local error

Found 2 expressions with local error:

0.0b
(+.f64 x (*.f64 y (log.f64 y)))
0.3b
(*.f64 y (log.f64 y))

rewrite49.0ms (1.9%)

Algorithm
rewrite-expression-head
Error
0b
Rules
12×log-prod_binary64_16191
10×add-sqr-sqrt_binary64_16127
add-cube-cbrt_binary64_16140 *-un-lft-identity_binary64_16105
distribute-rgt-in_binary64_16055 distribute-lft-in_binary64_16054 associate-+r+_binary64_16037
pow1_binary64_16166
add-exp-log_binary64_16143 add-log-exp_binary64_16144 add-cbrt-cube_binary64_16141 associate-*r*_binary64_16045
associate-*l*_binary64_16046
pow-prod-down_binary64_16176 prod-exp_binary64_16154 cbrt-unprod_binary64_16138 unswap-sqr_binary64_16073 log-pow_binary64_16194 *-commutative_binary64_16036 sum-log_binary64_16196 flip3-+_binary64_16108 flip-+_binary64_16079 +-commutative_binary64_16035
Counts
2 → 42
Calls

2 calls:

5.0ms
(*.f64 y (log.f64 y))
4.0ms
(+.f64 x (*.f64 y (log.f64 y)))
Compiler

Compiled 652 to 239 computations (63.3% saved)

series350.0ms (13.2%)

Error
0b
Counts
2 → 14
Calls

2 calls:

211.0ms
(+.f64 x (*.f64 y (log.f64 y)))
128.0ms
(*.f64 y (log.f64 y))
Compiler

Compiled 353 to 268 computations (24.1% saved)

simplify275.0ms (10.4%)

Algorithm
egg-herbie
Rules
653×unsub-neg_binary64_16099 associate-/l*_binary64_16050
362×distribute-rgt-neg-out_binary64_16065
327×distribute-lft-neg-out_binary64_16064
212×associate-*l*_binary64_16046
170×associate-*r*_binary64_16045
152×unswap-sqr_binary64_16073
147×associate-+l+_binary64_16038 associate-+r+_binary64_16037
131×distribute-rgt-neg-in_binary64_16063
127×neg-sub0_binary64_16100
125×sub-neg_binary64_16098 distribute-rgt-in_binary64_16055
121×neg-mul-1_binary64_16101
116×*-commutative_binary64_16036
112×distribute-lft-in_binary64_16054
110×exp-prod_binary64_16157
103×associate-/r/_binary64_16051
102×div-sub_binary64_16110
96×exp-sum_binary64_16151
90×sqr-pow_binary64_16077
88×distribute-lft-neg-in_binary64_16062
77×distribute-rgt-out_binary64_16058
72×distribute-neg-in_binary64_16066 associate-*l/_binary64_16048
60×exp-diff_binary64_16153 distribute-frac-neg_binary64_16068
54×associate--r+_binary64_16041
51×log-prod_binary64_16191 exp-to-pow_binary64_16167 cancel-sign-sub-inv_binary64_16071
47×pow-sqr_binary64_16078
46×cube-prod_binary64_16133
45×associate--l+_binary64_16042
43×associate-/l/_binary64_16052
42×distribute-rgt1-in_binary64_16061
39×associate-+l-_binary64_16040
37×*-rgt-identity_binary64_16095 *-lft-identity_binary64_16094
33×+-commutative_binary64_16035
31×associate-+r-_binary64_16039
28×associate--l-_binary64_16043
26×remove-double-neg_binary64_16093
24×mul0-rgt_binary64_16088 mul0-lft_binary64_16087
21×distribute-lft-out_binary64_16056
18×log-div_binary64_16192 distribute-rgt-out--_binary64_16059
14×associate--r-_binary64_16044
12×+-rgt-identity_binary64_16090 swap-sqr_binary64_16072
11×sub0-neg_binary64_16092
10×pow-plus_binary64_16168
log-pow_binary64_16194 unpow3_binary64_16171
cube-unmult_binary64_16142
prod-exp_binary64_16154 cube-div_binary64_16134 cube-neg_binary64_16132 sqr-neg_binary64_16119
times-frac_binary64_16111
+-lft-identity_binary64_16089 count-2_binary64_16053
log-rec_binary64_16193 cube-mult_binary64_16135 mul-1-neg_binary64_16097 difference-of-squares_binary64_16074 associate-/r*_binary64_16049 associate-*r/_binary64_16047
pow-base-1_binary64_16165 div-exp_binary64_16156 rem-exp-log_binary64_16145 +-inverses_binary64_16084 distribute-neg-frac_binary64_16069 distribute-neg-out_binary64_16067 distribute-lft1-in_binary64_16060
exp-neg_binary64_16152 /-rgt-identity_binary64_16096 --rgt-identity_binary64_16091 div0_binary64_16086 distribute-lft-out--_binary64_16057
rec-exp_binary64_16155 1-exp_binary64_16149 exp-1-e_binary64_16148 rem-log-exp_binary64_16146 *-inverses_binary64_16085 rgt-mult-inverse_binary64_16082 difference-of-sqr-1_binary64_16075 cancel-sign-sub_binary64_16070
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_16368 erf-erfc_binary64_16367 erf-odd_binary64_16366 if-if-and-not_binary64_16365 if-if-and_binary64_16364 if-if-or-not_binary64_16363 if-if-or_binary64_16362 if-not_binary64_16361 if-same_binary64_16360 if-false_binary64_16359 if-true_binary64_16358 not-gte_binary64_16357 not-lte_binary64_16356 not-gt_binary64_16355 not-lt_binary64_16354 gte-same_binary64_16353 lte-same_binary64_16352 gt-same_binary64_16351 lt-same_binary64_16350 sinh---cosh_binary64_16297 sinh-+-cosh_binary64_16296 sinh-cosh_binary64_16295 tanh-def-c_binary64_16294 tanh-def-b_binary64_16293 tanh-def-a_binary64_16292 cosh-def_binary64_16291 sinh-def_binary64_16290 tan-neg_binary64_16237 cos-neg_binary64_16236 sin-neg_binary64_16235 tan-0_binary64_16234 cos-0_binary64_16233 sin-0_binary64_16232 hang-m-tan_binary64_16231 hang-p-tan_binary64_16230 hang-m0-tan_binary64_16229 hang-p0-tan_binary64_16228 hang-0m-tan_binary64_16227 hang-0p-tan_binary64_16226 tan-+PI/2_binary64_16225 tan-+PI_binary64_16224 tan-PI_binary64_16223 tan-PI/3_binary64_16222 tan-PI/4_binary64_16221 tan-PI/6_binary64_16220 cos-+PI/2_binary64_16219 cos-+PI_binary64_16218 cos-PI_binary64_16217 cos-PI/2_binary64_16216 cos-PI/3_binary64_16215 cos-PI/4_binary64_16214 cos-PI/6_binary64_16213 sin-+PI/2_binary64_16212 sin-+PI_binary64_16211 sin-PI_binary64_16210 sin-PI/2_binary64_16209 sin-PI/3_binary64_16208 sin-PI/4_binary64_16207 sin-PI/6_binary64_16206 sub-1-sin_binary64_16205 sub-1-cos_binary64_16204 -1-add-sin_binary64_16203 -1-add-cos_binary64_16202 1-sub-sin_binary64_16201 1-sub-cos_binary64_16200 cos-sin-sum_binary64_16199 log-E_binary64_16195 pow-base-0_binary64_16189 unpow1/3_binary64_16172 unpow2_binary64_16170 unpow1/2_binary64_16169 unpow0_binary64_16164 unpow1_binary64_16163 unpow-1_binary64_16162 exp-lft-cube_binary64_16161 exp-lft-sqr_binary64_16160 exp-cbrt_binary64_16159 exp-sqrt_binary64_16158 e-exp-1_binary64_16150 exp-0_binary64_16147 rem-3cbrt-rft_binary64_16131 rem-3cbrt-lft_binary64_16130 rem-cbrt-cube_binary64_16129 rem-cube-cbrt_binary64_16128 sqr-abs_binary64_16120 rem-sqrt-square_binary64_16118 rem-square-sqrt_binary64_16117 lft-mult-inverse_binary64_16083 remove-double-div_binary64_16081 difference-of-sqr--1_binary64_16076
Counts
56 → 77
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
086583
1187544
2510538
31209538
42280538

prune68.0ms (2.6%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New77077
Fresh000
Picked011
Done000
Total77178
Error
0b
Counts
78 → 1
Compiler

Compiled 1235 to 376 computations (69.6% saved)

regimes93.0ms (3.5%)

Accuracy

Total 0.0b remaining (92.8%)

Threshold costs 0.0b (92.8%)

Compiler

Compiled 305 to 308 computations (-1% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_16035
sub-neg_binary64_16098 *-commutative_binary64_16036
neg-mul-1_binary64_16101 neg-sub0_binary64_16100
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_16365 if-if-and_binary64_16364 if-if-or-not_binary64_16363 if-if-or_binary64_16362 if-not_binary64_16361 if-same_binary64_16360 if-false_binary64_16359 if-true_binary64_16358 tan-0_binary64_16234 cos-0_binary64_16233 sin-0_binary64_16232 unpow1_binary64_16163 e-exp-1_binary64_16150 1-exp_binary64_16149 exp-1-e_binary64_16148 exp-0_binary64_16147 sqr-abs_binary64_16120 sqr-neg_binary64_16119 unsub-neg_binary64_16099 mul-1-neg_binary64_16097 /-rgt-identity_binary64_16096 *-rgt-identity_binary64_16095 *-lft-identity_binary64_16094 remove-double-neg_binary64_16093 sub0-neg_binary64_16092 --rgt-identity_binary64_16091 +-rgt-identity_binary64_16090 +-lft-identity_binary64_16089 cancel-sign-sub-inv_binary64_16071 cancel-sign-sub_binary64_16070 distribute-neg-frac_binary64_16069 distribute-frac-neg_binary64_16068 distribute-neg-out_binary64_16067 distribute-neg-in_binary64_16066 distribute-rgt-neg-out_binary64_16065 distribute-lft-neg-out_binary64_16064 distribute-rgt-neg-in_binary64_16063 distribute-lft-neg-in_binary64_16062
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11314
21814
32014
42114
Proof
(exp f64 (- f64 (+ f64 h0 (* f64 h1 (log f64 h1))) h2))

end0.0ms (0%)

sample1.1s (41%)

Algorithm
intervals
Results
396.0ms8000×body128valid
83.0ms1826×body128invalid
80.0ms2349×body128nan
Compiler

Compiled 63 to 62 computations (1.6% saved)

Profiling

Loading profile data...