Details

Time bar (total: 2.5s)

analyze238.0ms (9.4%)

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
0%99.9%0.1%6
18.7%81.1%0.1%7
21.8%78%0.1%8
43.7%56.2%0.1%9
54.6%39%6.4%10
58.5%35.1%6.4%11
67.3%26.3%6.4%12
71.7%18.8%9.5%13
74.1%16.4%9.5%14
Compiler

Compiled 8 to 8 computations (0% saved)

sample16.0ms (0.6%)

Algorithm
intervals
Results
6.0ms256×body128valid
0.0ms12×body128invalid
Compiler

Compiled 15 to 18 computations (-20% saved)

simplify1.7s (69.3%)

Algorithm
egg-herbie
Rules
517×distribute-rgt-out_binary64_11284
516×distribute-rgt1-in_binary64_11287
499×associate-*r*_binary64_11271
466×sub-neg_binary64_11324
455×distribute-rgt-out--_binary64_11285
255×associate-*l*_binary64_11272
225×cancel-sign-sub-inv_binary64_11297
191×associate--l+_binary64_11268
150×distribute-lft-out_binary64_11282
144×distribute-lft-out--_binary64_11283
136×associate--r-_binary64_11270
134×associate--l-_binary64_11269
46×distribute-lft1-in_binary64_11286
41×unsub-neg_binary64_11325
36×distribute-lft-neg-in_binary64_11288
32×distribute-rgt-in_binary64_11281
31×neg-mul-1_binary64_11327
30×distribute-rgt-neg-in_binary64_11289
29×neg-sub0_binary64_11326
23×count-2_binary64_11279
22×*-commutative_binary64_11262
21×+-inverses_binary64_11310
20×distribute-rgt-neg-out_binary64_11291
15×distribute-neg-in_binary64_11292
14×+-commutative_binary64_11261
12×associate-+l-_binary64_11266
10×sub0-neg_binary64_11318 distribute-lft-in_binary64_11280
distribute-neg-out_binary64_11293 associate--r+_binary64_11267
--rgt-identity_binary64_11317
mul0-lft_binary64_11313
mul0-rgt_binary64_11314 associate-+r-_binary64_11265
remove-double-neg_binary64_11319 distribute-lft-neg-out_binary64_11290
+-rgt-identity_binary64_11316 +-lft-identity_binary64_11315 associate-+l+_binary64_11264 associate-+r+_binary64_11263
cube-unmult_binary64_11368
exp-sum_binary64_11377 difference-of-squares_binary64_11300 unswap-sqr_binary64_11299
exp-lft-sqr_binary64_11386 exp-diff_binary64_11379 1-exp_binary64_11375 sqr-neg_binary64_11345
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_11594 erf-erfc_binary64_11593 erf-odd_binary64_11592 if-if-and-not_binary64_11591 if-if-and_binary64_11590 if-if-or-not_binary64_11589 if-if-or_binary64_11588 if-not_binary64_11587 if-same_binary64_11586 if-false_binary64_11585 if-true_binary64_11584 not-gte_binary64_11583 not-lte_binary64_11582 not-gt_binary64_11581 not-lt_binary64_11580 gte-same_binary64_11579 lte-same_binary64_11578 gt-same_binary64_11577 lt-same_binary64_11576 sinh---cosh_binary64_11523 sinh-+-cosh_binary64_11522 sinh-cosh_binary64_11521 tanh-def-c_binary64_11520 tanh-def-b_binary64_11519 tanh-def-a_binary64_11518 cosh-def_binary64_11517 sinh-def_binary64_11516 tan-neg_binary64_11463 cos-neg_binary64_11462 sin-neg_binary64_11461 tan-0_binary64_11460 cos-0_binary64_11459 sin-0_binary64_11458 hang-m-tan_binary64_11457 hang-p-tan_binary64_11456 hang-m0-tan_binary64_11455 hang-p0-tan_binary64_11454 hang-0m-tan_binary64_11453 hang-0p-tan_binary64_11452 tan-+PI/2_binary64_11451 tan-+PI_binary64_11450 tan-PI_binary64_11449 tan-PI/3_binary64_11448 tan-PI/4_binary64_11447 tan-PI/6_binary64_11446 cos-+PI/2_binary64_11445 cos-+PI_binary64_11444 cos-PI_binary64_11443 cos-PI/2_binary64_11442 cos-PI/3_binary64_11441 cos-PI/4_binary64_11440 cos-PI/6_binary64_11439 sin-+PI/2_binary64_11438 sin-+PI_binary64_11437 sin-PI_binary64_11436 sin-PI/2_binary64_11435 sin-PI/3_binary64_11434 sin-PI/4_binary64_11433 sin-PI/6_binary64_11432 sub-1-sin_binary64_11431 sub-1-cos_binary64_11430 -1-add-sin_binary64_11429 -1-add-cos_binary64_11428 1-sub-sin_binary64_11427 1-sub-cos_binary64_11426 cos-sin-sum_binary64_11425 log-E_binary64_11421 log-pow_binary64_11420 log-rec_binary64_11419 log-div_binary64_11418 log-prod_binary64_11417 pow-base-0_binary64_11415 unpow1/3_binary64_11398 unpow3_binary64_11397 unpow2_binary64_11396 unpow1/2_binary64_11395 pow-plus_binary64_11394 exp-to-pow_binary64_11393 pow-base-1_binary64_11391 unpow0_binary64_11390 unpow1_binary64_11389 unpow-1_binary64_11388 exp-lft-cube_binary64_11387 exp-cbrt_binary64_11385 exp-sqrt_binary64_11384 exp-prod_binary64_11383 div-exp_binary64_11382 rec-exp_binary64_11381 prod-exp_binary64_11380 exp-neg_binary64_11378 e-exp-1_binary64_11376 exp-1-e_binary64_11374 exp-0_binary64_11373 rem-log-exp_binary64_11372 rem-exp-log_binary64_11371 cube-mult_binary64_11361 cube-div_binary64_11360 cube-prod_binary64_11359 cube-neg_binary64_11358 rem-3cbrt-rft_binary64_11357 rem-3cbrt-lft_binary64_11356 rem-cbrt-cube_binary64_11355 rem-cube-cbrt_binary64_11354 sqr-abs_binary64_11346 rem-sqrt-square_binary64_11344 rem-square-sqrt_binary64_11343 times-frac_binary64_11337 div-sub_binary64_11336 mul-1-neg_binary64_11323 /-rgt-identity_binary64_11322 *-rgt-identity_binary64_11321 *-lft-identity_binary64_11320 div0_binary64_11312 *-inverses_binary64_11311 lft-mult-inverse_binary64_11309 rgt-mult-inverse_binary64_11308 remove-double-div_binary64_11307 pow-sqr_binary64_11304 sqr-pow_binary64_11303 difference-of-sqr--1_binary64_11302 difference-of-sqr-1_binary64_11301 swap-sqr_binary64_11298 cancel-sign-sub_binary64_11296 distribute-neg-frac_binary64_11295 distribute-frac-neg_binary64_11294 associate-/l/_binary64_11278 associate-/r/_binary64_11277 associate-/l*_binary64_11276 associate-/r*_binary64_11275 associate-*l/_binary64_11274 associate-*r/_binary64_11273
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11710
24210
38210
49910
514310
622510
7327010

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 14 to 14 computations (0% saved)

localize5.0ms (0.2%)

rewrite0.0ms (0%)

Algorithm
rewrite-expression-head
Error
0b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

series0.0ms (0%)

Error
0b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

simplify9.0ms (0.4%)

Algorithm
egg-herbie
Rules
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_11594 erf-erfc_binary64_11593 erf-odd_binary64_11592 if-if-and-not_binary64_11591 if-if-and_binary64_11590 if-if-or-not_binary64_11589 if-if-or_binary64_11588 if-not_binary64_11587 if-same_binary64_11586 if-false_binary64_11585 if-true_binary64_11584 not-gte_binary64_11583 not-lte_binary64_11582 not-gt_binary64_11581 not-lt_binary64_11580 gte-same_binary64_11579 lte-same_binary64_11578 gt-same_binary64_11577 lt-same_binary64_11576 sinh---cosh_binary64_11523 sinh-+-cosh_binary64_11522 sinh-cosh_binary64_11521 tanh-def-c_binary64_11520 tanh-def-b_binary64_11519 tanh-def-a_binary64_11518 cosh-def_binary64_11517 sinh-def_binary64_11516 tan-neg_binary64_11463 cos-neg_binary64_11462 sin-neg_binary64_11461 tan-0_binary64_11460 cos-0_binary64_11459 sin-0_binary64_11458 hang-m-tan_binary64_11457 hang-p-tan_binary64_11456 hang-m0-tan_binary64_11455 hang-p0-tan_binary64_11454 hang-0m-tan_binary64_11453 hang-0p-tan_binary64_11452 tan-+PI/2_binary64_11451 tan-+PI_binary64_11450 tan-PI_binary64_11449 tan-PI/3_binary64_11448 tan-PI/4_binary64_11447 tan-PI/6_binary64_11446 cos-+PI/2_binary64_11445 cos-+PI_binary64_11444 cos-PI_binary64_11443 cos-PI/2_binary64_11442 cos-PI/3_binary64_11441 cos-PI/4_binary64_11440 cos-PI/6_binary64_11439 sin-+PI/2_binary64_11438 sin-+PI_binary64_11437 sin-PI_binary64_11436 sin-PI/2_binary64_11435 sin-PI/3_binary64_11434 sin-PI/4_binary64_11433 sin-PI/6_binary64_11432 sub-1-sin_binary64_11431 sub-1-cos_binary64_11430 -1-add-sin_binary64_11429 -1-add-cos_binary64_11428 1-sub-sin_binary64_11427 1-sub-cos_binary64_11426 cos-sin-sum_binary64_11425 log-E_binary64_11421 log-pow_binary64_11420 log-rec_binary64_11419 log-div_binary64_11418 log-prod_binary64_11417 pow-base-0_binary64_11415 unpow1/3_binary64_11398 unpow3_binary64_11397 unpow2_binary64_11396 unpow1/2_binary64_11395 pow-plus_binary64_11394 exp-to-pow_binary64_11393 pow-base-1_binary64_11391 unpow0_binary64_11390 unpow1_binary64_11389 unpow-1_binary64_11388 exp-lft-cube_binary64_11387 exp-lft-sqr_binary64_11386 exp-cbrt_binary64_11385 exp-sqrt_binary64_11384 exp-prod_binary64_11383 div-exp_binary64_11382 rec-exp_binary64_11381 prod-exp_binary64_11380 exp-diff_binary64_11379 exp-neg_binary64_11378 exp-sum_binary64_11377 e-exp-1_binary64_11376 1-exp_binary64_11375 exp-1-e_binary64_11374 exp-0_binary64_11373 rem-log-exp_binary64_11372 rem-exp-log_binary64_11371 cube-unmult_binary64_11368 cube-mult_binary64_11361 cube-div_binary64_11360 cube-prod_binary64_11359 cube-neg_binary64_11358 rem-3cbrt-rft_binary64_11357 rem-3cbrt-lft_binary64_11356 rem-cbrt-cube_binary64_11355 rem-cube-cbrt_binary64_11354 sqr-abs_binary64_11346 sqr-neg_binary64_11345 rem-sqrt-square_binary64_11344 rem-square-sqrt_binary64_11343 times-frac_binary64_11337 div-sub_binary64_11336 neg-mul-1_binary64_11327 neg-sub0_binary64_11326 unsub-neg_binary64_11325 sub-neg_binary64_11324 mul-1-neg_binary64_11323 /-rgt-identity_binary64_11322 *-rgt-identity_binary64_11321 *-lft-identity_binary64_11320 remove-double-neg_binary64_11319 sub0-neg_binary64_11318 --rgt-identity_binary64_11317 +-rgt-identity_binary64_11316 +-lft-identity_binary64_11315 mul0-rgt_binary64_11314 mul0-lft_binary64_11313 div0_binary64_11312 *-inverses_binary64_11311 +-inverses_binary64_11310 lft-mult-inverse_binary64_11309 rgt-mult-inverse_binary64_11308 remove-double-div_binary64_11307 pow-sqr_binary64_11304 sqr-pow_binary64_11303 difference-of-sqr--1_binary64_11302 difference-of-sqr-1_binary64_11301 difference-of-squares_binary64_11300 unswap-sqr_binary64_11299 swap-sqr_binary64_11298 cancel-sign-sub-inv_binary64_11297 cancel-sign-sub_binary64_11296 distribute-neg-frac_binary64_11295 distribute-frac-neg_binary64_11294 distribute-neg-out_binary64_11293 distribute-neg-in_binary64_11292 distribute-rgt-neg-out_binary64_11291 distribute-lft-neg-out_binary64_11290 distribute-rgt-neg-in_binary64_11289 distribute-lft-neg-in_binary64_11288 distribute-rgt1-in_binary64_11287 distribute-lft1-in_binary64_11286 distribute-rgt-out--_binary64_11285 distribute-rgt-out_binary64_11284 distribute-lft-out--_binary64_11283 distribute-lft-out_binary64_11282 distribute-rgt-in_binary64_11281 distribute-lft-in_binary64_11280 count-2_binary64_11279 associate-/l/_binary64_11278 associate-/r/_binary64_11277 associate-/l*_binary64_11276 associate-/r*_binary64_11275 associate-*l/_binary64_11274 associate-*r/_binary64_11273 associate-*l*_binary64_11272 associate-*r*_binary64_11271 associate--r-_binary64_11270 associate--l-_binary64_11269 associate--l+_binary64_11268 associate--r+_binary64_11267 associate-+l-_binary64_11266 associate-+r-_binary64_11265 associate-+l+_binary64_11264 associate-+r+_binary64_11263 *-commutative_binary64_11262 +-commutative_binary64_11261
Counts
0 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000

prune1.0ms (0.1%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done000
Total011
Error
0b
Counts
1 → 1
Compiler

Compiled 7 to 7 computations (0% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_11262
sub-neg_binary64_11324 +-commutative_binary64_11261
neg-mul-1_binary64_11327 neg-sub0_binary64_11326
distribute-rgt-neg-in_binary64_11289
distribute-lft-neg-in_binary64_11288
cancel-sign-sub-inv_binary64_11297
distribute-lft-neg-out_binary64_11290
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_11591 if-if-and_binary64_11590 if-if-or-not_binary64_11589 if-if-or_binary64_11588 if-not_binary64_11587 if-same_binary64_11586 if-false_binary64_11585 if-true_binary64_11584 tan-0_binary64_11460 cos-0_binary64_11459 sin-0_binary64_11458 unpow1_binary64_11389 e-exp-1_binary64_11376 1-exp_binary64_11375 exp-1-e_binary64_11374 exp-0_binary64_11373 sqr-abs_binary64_11346 sqr-neg_binary64_11345 unsub-neg_binary64_11325 mul-1-neg_binary64_11323 /-rgt-identity_binary64_11322 *-rgt-identity_binary64_11321 *-lft-identity_binary64_11320 remove-double-neg_binary64_11319 sub0-neg_binary64_11318 --rgt-identity_binary64_11317 +-rgt-identity_binary64_11316 +-lft-identity_binary64_11315 cancel-sign-sub_binary64_11296 distribute-neg-frac_binary64_11295 distribute-frac-neg_binary64_11294 distribute-neg-out_binary64_11293 distribute-neg-in_binary64_11292 distribute-rgt-neg-out_binary64_11291
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11510
23110
34110
44910
55210
Proof
(- f64 h0 (* f64 (* f64 h1 4) h2))

end0.0ms (0%)

sample499.0ms (19.7%)

Algorithm
intervals
Results
194.0ms8000×body128valid
7.0ms301×body128invalid
Compiler

Compiled 22 to 25 computations (-13.6% saved)

Profiling

Loading profile data...