Details

Time bar (total: 15.8s)

analyze1.2s (7.4%)

Algorithm
search
egg-herbie
Rules
12×*-commutative_binary64_350
associate-/l*_binary64_364
associate-/r/_binary64_365 associate-*l/_binary64_362 associate-*r/_binary64_361
+-commutative_binary64_349
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 log-rec_binary64_507 log-div_binary64_506 log-prod_binary64_505 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow3_binary64_485 unpow2_binary64_484 unpow1/2_binary64_483 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 exp-prod_binary64_471 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 1-exp_binary64_463 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-unmult_binary64_456 cube-mult_binary64_449 cube-div_binary64_448 cube-prod_binary64_447 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-sqrt-square_binary64_432 rem-square-sqrt_binary64_431 times-frac_binary64_425 div-sub_binary64_424 neg-mul-1_binary64_415 neg-sub0_binary64_414 unsub-neg_binary64_413 sub-neg_binary64_412 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-rgt-identity_binary64_404 +-lft-identity_binary64_403 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 pow-sqr_binary64_392 sqr-pow_binary64_391 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 difference-of-squares_binary64_388 unswap-sqr_binary64_387 swap-sqr_binary64_386 cancel-sign-sub-inv_binary64_385 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-neg-in_binary64_380 distribute-rgt-neg-out_binary64_379 distribute-lft-neg-out_binary64_378 distribute-rgt-neg-in_binary64_377 distribute-lft-neg-in_binary64_376 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 distribute-rgt-out--_binary64_373 distribute-rgt-out_binary64_372 distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 count-2_binary64_367 associate-/l/_binary64_366 associate-/r*_binary64_363 associate-*l*_binary64_360 associate-*r*_binary64_359 associate--r-_binary64_358 associate--l-_binary64_357 associate--l+_binary64_356 associate--r+_binary64_355 associate-+l-_binary64_354 associate-+r-_binary64_353 associate-+l+_binary64_352 associate-+r+_binary64_351
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02356
13656
24856
36256
46656
56656
033
133
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
6.2%93.6%0.1%7
9.4%90.5%0.1%8
14%85.8%0.1%9
19.5%80.4%0.1%10
20.7%79.2%0.1%11
22%77.8%0.1%12
23.5%76.4%0.1%13
23.8%76%0.1%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample67.0ms (0.4%)

Algorithm
intervals
Results
31.0ms113×body1024valid
12.0ms59×body512valid
5.0msbody2048valid
4.0ms56×body128valid
3.0ms19×body256valid
Compiler

Compiled 19 to 20 computations (-5.3% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_350
associate-/l*_binary64_364
associate-/r/_binary64_365 associate-*l/_binary64_362 associate-*r/_binary64_361 +-commutative_binary64_349
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-pow_binary64_508 log-rec_binary64_507 log-div_binary64_506 log-prod_binary64_505 pow-base-0_binary64_503 unpow1/3_binary64_486 unpow3_binary64_485 unpow2_binary64_484 unpow1/2_binary64_483 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow1_binary64_477 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 exp-prod_binary64_471 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 1-exp_binary64_463 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-unmult_binary64_456 cube-mult_binary64_449 cube-div_binary64_448 cube-prod_binary64_447 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-sqrt-square_binary64_432 rem-square-sqrt_binary64_431 times-frac_binary64_425 div-sub_binary64_424 neg-mul-1_binary64_415 neg-sub0_binary64_414 unsub-neg_binary64_413 sub-neg_binary64_412 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-rgt-identity_binary64_404 +-lft-identity_binary64_403 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 pow-sqr_binary64_392 sqr-pow_binary64_391 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 difference-of-squares_binary64_388 unswap-sqr_binary64_387 swap-sqr_binary64_386 cancel-sign-sub-inv_binary64_385 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-neg-in_binary64_380 distribute-rgt-neg-out_binary64_379 distribute-lft-neg-out_binary64_378 distribute-rgt-neg-in_binary64_377 distribute-lft-neg-in_binary64_376 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 distribute-rgt-out--_binary64_373 distribute-rgt-out_binary64_372 distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 count-2_binary64_367 associate-/l/_binary64_366 associate-/r*_binary64_363 associate-*l*_binary64_360 associate-*r*_binary64_359 associate--r-_binary64_358 associate--l-_binary64_357 associate--l+_binary64_356 associate--r+_binary64_355 associate-+l-_binary64_354 associate-+r-_binary64_353 associate-+l+_binary64_352 associate-+r+_binary64_351
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11314
21614
32014
42114
52114

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 18 to 16 computations (11.1% saved)

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.2b
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
0.2b
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
3.9b
(cos.f64 (+.f64 a b))

rewrite98.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
24×add-sqr-sqrt_binary64_441
19×add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419 times-frac_binary64_425
13×associate-*r*_binary64_359
10×add-exp-log_binary64_457 add-cbrt-cube_binary64_455
pow1_binary64_480
add-log-exp_binary64_458 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l*_binary64_360
div-exp_binary64_470 cbrt-undiv_binary64_453 div-inv_binary64_416 prod-exp_binary64_468 cbrt-unprod_binary64_452 unswap-sqr_binary64_387
cos-sum_binary64_553 frac-2neg_binary64_430 clear-num_binary64_418 pow-prod-down_binary64_490 associate-*r/_binary64_361 *-commutative_binary64_350
Counts
3 → 67
Calls

3 calls:

8.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
5.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
5.0ms
(cos.f64 (+.f64 a b))
Compiler

Compiled 1186 to 235 computations (80.2% saved)

series736.0ms (4.7%)

Error
13.5b
Counts
3 → 36
Calls

3 calls:

418.0ms
(*.f64 r (/.f64 (sin.f64 b) (cos.f64 (+.f64 a b))))
216.0ms
(/.f64 (sin.f64 b) (cos.f64 (+.f64 a b)))
60.0ms
(cos.f64 (+.f64 a b))
Compiler

Compiled 1699 to 1043 computations (38.6% saved)

simplify125.0ms (0.8%)

Algorithm
egg-herbie
Rules
487×associate-/r*_binary64_363
383×associate-*l/_binary64_362
360×associate-*r/_binary64_361
292×associate-+l+_binary64_352
246×associate-/r/_binary64_365
195×associate-/l/_binary64_366
165×associate-*r*_binary64_359
147×associate-*l*_binary64_360
132×associate-/l*_binary64_364
129×sub-neg_binary64_412
125×sqr-pow_binary64_391
110×times-frac_binary64_425
96×*-commutative_binary64_350
83×unswap-sqr_binary64_387
73×cancel-sign-sub-inv_binary64_385
64×associate-+r+_binary64_351
63×+-commutative_binary64_349
60×neg-mul-1_binary64_415
58×*-rgt-identity_binary64_409
51×neg-sub0_binary64_414
49×*-lft-identity_binary64_408
34×distribute-rgt-neg-in_binary64_377
31×cube-prod_binary64_447
28×log-prod_binary64_505 distribute-lft-neg-in_binary64_376
25×/-rgt-identity_binary64_410
22×unpow3_binary64_485 cube-div_binary64_448
20×pow-sqr_binary64_392
19×log-div_binary64_506 associate-+l-_binary64_354
17×cube-mult_binary64_449
15×associate-+r-_binary64_353
14×unsub-neg_binary64_413
13×exp-prod_binary64_471
11×cube-unmult_binary64_456
10×+-rgt-identity_binary64_404 associate--l+_binary64_356
associate--r+_binary64_355
unpow1/2_binary64_483 rem-sqrt-square_binary64_432 sub0-neg_binary64_406 difference-of-squares_binary64_388 distribute-rgt-out_binary64_372
pow-plus_binary64_482
unpow2_binary64_484 unpow1_binary64_477 distribute-lft-neg-out_binary64_378
remove-double-neg_binary64_407 swap-sqr_binary64_386 distribute-rgt-out--_binary64_373 distribute-rgt-in_binary64_369
distribute-neg-in_binary64_380
log-pow_binary64_508 associate--l-_binary64_357
distribute-neg-frac_binary64_383
1-exp_binary64_463 exp-1-e_binary64_462 mul0-rgt_binary64_402 mul0-lft_binary64_401 distribute-lft-out--_binary64_371 distribute-lft-in_binary64_368
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 log-rec_binary64_507 pow-base-0_binary64_503 unpow1/3_binary64_486 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-square-sqrt_binary64_431 div-sub_binary64_424 mul-1-neg_binary64_411 --rgt-identity_binary64_405 +-lft-identity_binary64_403 div0_binary64_400 *-inverses_binary64_399 +-inverses_binary64_398 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-rgt-neg-out_binary64_379 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 distribute-lft-out_binary64_370 count-2_binary64_367 associate--r-_binary64_358
Counts
103 → 91
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02032257
15152111
218702073
346962073
448432073
550212073

prune122.0ms (0.8%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New811091
Fresh000
Picked101
Done000
Total821092
Error
0.2b
Counts
92 → 10
Compiler

Compiled 1795 to 532 computations (70.4% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
0.2b
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
0.2b
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))

rewrite193.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
29×add-sqr-sqrt_binary64_441
22×add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419
20×associate-*r*_binary64_359
19×times-frac_binary64_425
13×add-exp-log_binary64_457 add-cbrt-cube_binary64_455
pow1_binary64_480 associate-/r/_binary64_365
sin-mult_binary64_574
add-log-exp_binary64_458 cos-mult_binary64_573 associate-*l*_binary64_360
frac-sub_binary64_428 sub-div_binary64_426 flip3--_binary64_423 flip--_binary64_394 associate-/l*_binary64_364 associate-/r*_binary64_363 prod-exp_binary64_468 cbrt-unprod_binary64_452 unswap-sqr_binary64_387
div-exp_binary64_470 cbrt-undiv_binary64_453 div-inv_binary64_416 pow-prod-down_binary64_490 *-commutative_binary64_350
frac-2neg_binary64_430 clear-num_binary64_418 associate-*r/_binary64_361 diff-log_binary64_511 sub-neg_binary64_412 cancel-sign-sub-inv_binary64_385
Counts
4 → 100
Calls

4 calls:

16.0ms
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
9.0ms
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
6.0ms
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
5.0ms
(*.f64 (sin.f64 b) (sin.f64 a))
Compiler

Compiled 2890 to 436 computations (84.9% saved)

series1.7s (11.1%)

Error
0.2b
Counts
4 → 46
Calls

4 calls:

849.0ms
(*.f64 r (/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))))
455.0ms
(/.f64 (sin.f64 b) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
242.0ms
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
154.0ms
(*.f64 (sin.f64 b) (sin.f64 a))
Compiler

Compiled 2545 to 1459 computations (42.7% saved)

simplify148.0ms (0.9%)

Algorithm
egg-herbie
Rules
331×associate-/r/_binary64_365
264×associate-*r*_binary64_359
251×associate-/l/_binary64_366
249×cancel-sign-sub-inv_binary64_385
237×associate-*l*_binary64_360
177×distribute-rgt-neg-in_binary64_377
176×associate-/l*_binary64_364
152×distribute-lft-neg-in_binary64_376
143×*-commutative_binary64_350
138×unswap-sqr_binary64_387
133×neg-mul-1_binary64_415 neg-sub0_binary64_414
128×times-frac_binary64_425
87×+-commutative_binary64_349
81×exp-prod_binary64_471
80×div-sub_binary64_424
76×sub-neg_binary64_412
75×associate-/r*_binary64_363
71×associate-*r/_binary64_361
68×sqr-pow_binary64_391
66×associate-+r+_binary64_351
62×cube-prod_binary64_447
57×associate-*l/_binary64_362
55×distribute-rgt-in_binary64_369
53×log-prod_binary64_505
52×associate-+l+_binary64_352
48×*-rgt-identity_binary64_409
46×distribute-lft-in_binary64_368
35×*-lft-identity_binary64_408
33×distribute-rgt-out_binary64_372
31×cube-div_binary64_448
29×log-div_binary64_506
22×distribute-neg-frac_binary64_383
21×distribute-lft-neg-out_binary64_378
20×/-rgt-identity_binary64_410
19×unpow3_binary64_485
15×distribute-neg-in_binary64_380 distribute-rgt-out--_binary64_373 associate--l+_binary64_356 associate--r+_binary64_355
12×cube-unmult_binary64_456 cube-mult_binary64_449
11×unsub-neg_binary64_413 swap-sqr_binary64_386
10×exp-sum_binary64_465 distribute-lft-out_binary64_370
unpow1/2_binary64_483
rem-sqrt-square_binary64_432
unpow2_binary64_484 pow-plus_binary64_482 unpow1_binary64_477 distribute-lft-out--_binary64_371
log-rec_binary64_507 exp-diff_binary64_467 difference-of-squares_binary64_388 distribute-rgt-neg-out_binary64_379
log-pow_binary64_508
pow-sqr_binary64_392 associate--r-_binary64_358
remove-double-neg_binary64_407 associate-+r-_binary64_353
div-exp_binary64_470 1-exp_binary64_463 exp-1-e_binary64_462 cube-neg_binary64_446 sqr-neg_binary64_433 +-rgt-identity_binary64_404 *-inverses_binary64_399 +-inverses_binary64_398 associate-+l-_binary64_354
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 pow-base-0_binary64_503 unpow1/3_binary64_486 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 rec-exp_binary64_469 prod-exp_binary64_468 exp-neg_binary64_466 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 rem-square-sqrt_binary64_431 mul-1-neg_binary64_411 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-lft-identity_binary64_403 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 count-2_binary64_367 associate--l-_binary64_357
Counts
146 → 126
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02774378
17284079
227273753
345343753
449703753

prune179.0ms (1.1%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New11511126
Fresh909
Picked101
Done000
Total12511136
Error
0.0b
Counts
136 → 11
Compiler

Compiled 3428 to 880 computations (74.3% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
0.2b
(*.f64 (sin.f64 b) r)
0.2b
(*.f64 (sin.f64 b) (sin.f64 a))
0.2b
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))

rewrite116.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
14×add-sqr-sqrt_binary64_441
13×add-exp-log_binary64_457 add-cbrt-cube_binary64_455
10×add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419
pow1_binary64_480
add-log-exp_binary64_458 associate-*l*_binary64_360 associate-*r*_binary64_359
sin-mult_binary64_574
cos-mult_binary64_573 associate-/r/_binary64_365
prod-exp_binary64_468 cbrt-unprod_binary64_452 times-frac_binary64_425 associate-/r*_binary64_363
div-exp_binary64_470 cbrt-undiv_binary64_453 frac-sub_binary64_428 sub-div_binary64_426 flip3--_binary64_423 flip--_binary64_394 pow-prod-down_binary64_490 unswap-sqr_binary64_387 *-commutative_binary64_350
frac-2neg_binary64_430 clear-num_binary64_418 div-inv_binary64_416 associate-/l*_binary64_364 diff-log_binary64_511 sub-neg_binary64_412 cancel-sign-sub-inv_binary64_385
Counts
4 → 76
Calls

4 calls:

10.0ms
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
6.0ms
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
5.0ms
(*.f64 (sin.f64 b) (sin.f64 a))
4.0ms
(*.f64 (sin.f64 b) r)
Compiler

Compiled 1946 to 307 computations (84.2% saved)

series1.4s (8.7%)

Error
0.0b
Counts
4 → 44
Calls

4 calls:

863.0ms
(/.f64 (*.f64 (sin.f64 b) r) (-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a))))
225.0ms
(-.f64 (*.f64 (cos.f64 b) (cos.f64 a)) (*.f64 (sin.f64 b) (sin.f64 a)))
133.0ms
(*.f64 (sin.f64 b) (sin.f64 a))
111.0ms
(*.f64 (sin.f64 b) r)
Compiler

Compiled 2318 to 1283 computations (44.7% saved)

simplify88.0ms (0.6%)

Algorithm
egg-herbie
Rules
489×associate-/r*_binary64_363
335×cancel-sign-sub-inv_binary64_385
326×associate-/l/_binary64_366
308×associate-/r/_binary64_365
212×distribute-rgt-neg-in_binary64_377
197×associate-*r*_binary64_359
189×distribute-lft-neg-in_binary64_376
183×associate-*l*_binary64_360
139×associate-/l*_binary64_364
121×*-commutative_binary64_350
118×unswap-sqr_binary64_387
99×times-frac_binary64_425
97×sub-neg_binary64_412
72×sqr-pow_binary64_391
69×+-commutative_binary64_349
59×distribute-rgt-in_binary64_369
57×neg-mul-1_binary64_415 neg-sub0_binary64_414
48×distribute-lft-in_binary64_368
45×associate-*l/_binary64_362
38×div-sub_binary64_424 distribute-rgt-out_binary64_372
34×*-rgt-identity_binary64_409 associate-+r+_binary64_351
32×exp-prod_binary64_471 associate-*r/_binary64_361
30×associate-+l+_binary64_352
24×distribute-neg-frac_binary64_383
23×distribute-lft-neg-out_binary64_378 associate--l+_binary64_356
21×cube-prod_binary64_447
20×log-div_binary64_506 distribute-rgt-out--_binary64_373
19×*-lft-identity_binary64_408 associate--r+_binary64_355
17×distribute-neg-in_binary64_380
16×cube-div_binary64_448
15×log-prod_binary64_505 unsub-neg_binary64_413 /-rgt-identity_binary64_410
14×distribute-lft-out_binary64_370
11×swap-sqr_binary64_386
10×distribute-lft-out--_binary64_371
unpow3_binary64_485
cube-mult_binary64_449
unpow2_binary64_484 unpow1/2_binary64_483 unpow1_binary64_477
difference-of-squares_binary64_388 distribute-rgt-neg-out_binary64_379
log-rec_binary64_507 exp-sum_binary64_465 cube-unmult_binary64_456
pow-sqr_binary64_392 associate--r-_binary64_358
log-pow_binary64_508 exp-diff_binary64_467 rem-sqrt-square_binary64_432 remove-double-neg_binary64_407
div-exp_binary64_470 1-exp_binary64_463 exp-1-e_binary64_462 +-rgt-identity_binary64_404 *-inverses_binary64_399 +-inverses_binary64_398 associate-+r-_binary64_353
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 pow-base-0_binary64_503 unpow1/3_binary64_486 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 rec-exp_binary64_469 prod-exp_binary64_468 exp-neg_binary64_466 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-square-sqrt_binary64_431 mul-1-neg_binary64_411 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-lft-identity_binary64_403 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 count-2_binary64_367 associate--l-_binary64_357 associate-+l-_binary64_354
Counts
120 → 97
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02302808
16342584
222942463
349652463

prune113.0ms (0.7%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New96197
Fresh01010
Picked011
Done000
Total9612108
Error
0.0b
Counts
108 → 12
Compiler

Compiled 2513 to 644 computations (74.4% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
0.2b
(*.f64 (sin.f64 a) (sin.f64 b))
0.2b
(/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
0.3b
(*.f64 (sin.f64 b) (/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))

rewrite199.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
34×add-exp-log_binary64_457
32×add-sqr-sqrt_binary64_441
24×*-un-lft-identity_binary64_419
23×add-cube-cbrt_binary64_454
22×add-cbrt-cube_binary64_455
21×associate-*r*_binary64_359
20×times-frac_binary64_425
14×pow1_binary64_480 prod-exp_binary64_468
associate-*l*_binary64_360
cbrt-unprod_binary64_452 associate-/r/_binary64_365
div-exp_binary64_470
pow-prod-down_binary64_490 sin-mult_binary64_574
add-log-exp_binary64_458 unswap-sqr_binary64_387 associate-*r/_binary64_361 cos-mult_binary64_573
1-exp_binary64_463 rec-exp_binary64_469 cbrt-undiv_binary64_453 *-commutative_binary64_350 associate-/l*_binary64_364 associate-/r*_binary64_363
un-div-inv_binary64_417 div-inv_binary64_416 frac-sub_binary64_428 sub-div_binary64_426 flip3--_binary64_423 flip--_binary64_394
inv-pow_binary64_504 pow-flip_binary64_493 frac-2neg_binary64_430 clear-num_binary64_418
Counts
4 → 118
Calls

4 calls:

16.0ms
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
14.0ms
(*.f64 (sin.f64 b) (/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
8.0ms
(/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
5.0ms
(*.f64 (sin.f64 a) (sin.f64 b))
Compiler

Compiled 3505 to 935 computations (73.3% saved)

series1.9s (11.8%)

Error
0.0b
Counts
4 → 46
Calls

4 calls:

826.0ms
(*.f64 r (*.f64 (sin.f64 b) (/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))))
445.0ms
(*.f64 (sin.f64 b) (/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b)))))
390.0ms
(/.f64 1 (-.f64 (*.f64 (cos.f64 a) (cos.f64 b)) (*.f64 (sin.f64 a) (sin.f64 b))))
137.0ms
(*.f64 (sin.f64 a) (sin.f64 b))
Compiler

Compiled 2859 to 1716 computations (40% saved)

simplify125.0ms (0.8%)

Algorithm
egg-herbie
Rules
586×associate-/r*_binary64_363
306×associate-*r*_binary64_359
276×associate-*l*_binary64_360
265×associate-/r/_binary64_365
200×associate-/l/_binary64_366
179×associate-/l*_binary64_364
167×cancel-sign-sub-inv_binary64_385
156×*-commutative_binary64_350
155×unswap-sqr_binary64_387
152×distribute-rgt-neg-in_binary64_377
132×times-frac_binary64_425
130×distribute-lft-neg-in_binary64_376
105×associate-+r+_binary64_351
104×+-commutative_binary64_349
73×associate-+l+_binary64_352
70×sqr-pow_binary64_391
63×associate-*r/_binary64_361
54×sub-neg_binary64_412
43×distribute-rgt-in_binary64_369
40×*-rgt-identity_binary64_409
39×associate-*l/_binary64_362
37×distribute-lft-in_binary64_368
36×neg-mul-1_binary64_415 neg-sub0_binary64_414
31×exp-prod_binary64_471
28×*-lft-identity_binary64_408
27×swap-sqr_binary64_386
24×log-prod_binary64_505 cube-prod_binary64_447
23×div-sub_binary64_424
17×/-rgt-identity_binary64_410
15×distribute-rgt-out_binary64_372
13×distribute-lft-neg-out_binary64_378
12×cube-div_binary64_448
11×log-div_binary64_506 distribute-neg-in_binary64_380
10×unsub-neg_binary64_413 distribute-neg-frac_binary64_383 associate--l+_binary64_356
unpow3_binary64_485 distribute-rgt-out--_binary64_373
cube-unmult_binary64_456 cube-mult_binary64_449 associate--r+_binary64_355 associate-+r-_binary64_353
unpow2_binary64_484 unpow1/2_binary64_483 unpow1_binary64_477
difference-of-squares_binary64_388 distribute-rgt-neg-out_binary64_379 distribute-lft-out--_binary64_371
distribute-lft-out_binary64_370
log-rec_binary64_507 +-rgt-identity_binary64_404 pow-sqr_binary64_392 associate--r-_binary64_358 associate-+l-_binary64_354
log-pow_binary64_508 rem-sqrt-square_binary64_432 remove-double-neg_binary64_407
1-exp_binary64_463 exp-1-e_binary64_462 sub0-neg_binary64_406 +-lft-identity_binary64_403 +-inverses_binary64_398 count-2_binary64_367
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_682 erf-erfc_binary64_681 erf-odd_binary64_680 if-if-and-not_binary64_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 not-gte_binary64_671 not-lte_binary64_670 not-gt_binary64_669 not-lt_binary64_668 gte-same_binary64_667 lte-same_binary64_666 gt-same_binary64_665 lt-same_binary64_664 sinh---cosh_binary64_611 sinh-+-cosh_binary64_610 sinh-cosh_binary64_609 tanh-def-c_binary64_608 tanh-def-b_binary64_607 tanh-def-a_binary64_606 cosh-def_binary64_605 sinh-def_binary64_604 tan-neg_binary64_551 cos-neg_binary64_550 sin-neg_binary64_549 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 hang-m-tan_binary64_545 hang-p-tan_binary64_544 hang-m0-tan_binary64_543 hang-p0-tan_binary64_542 hang-0m-tan_binary64_541 hang-0p-tan_binary64_540 tan-+PI/2_binary64_539 tan-+PI_binary64_538 tan-PI_binary64_537 tan-PI/3_binary64_536 tan-PI/4_binary64_535 tan-PI/6_binary64_534 cos-+PI/2_binary64_533 cos-+PI_binary64_532 cos-PI_binary64_531 cos-PI/2_binary64_530 cos-PI/3_binary64_529 cos-PI/4_binary64_528 cos-PI/6_binary64_527 sin-+PI/2_binary64_526 sin-+PI_binary64_525 sin-PI_binary64_524 sin-PI/2_binary64_523 sin-PI/3_binary64_522 sin-PI/4_binary64_521 sin-PI/6_binary64_520 sub-1-sin_binary64_519 sub-1-cos_binary64_518 -1-add-sin_binary64_517 -1-add-cos_binary64_516 1-sub-sin_binary64_515 1-sub-cos_binary64_514 cos-sin-sum_binary64_513 log-E_binary64_509 pow-base-0_binary64_503 unpow1/3_binary64_486 pow-plus_binary64_482 exp-to-pow_binary64_481 pow-base-1_binary64_479 unpow0_binary64_478 unpow-1_binary64_476 exp-lft-cube_binary64_475 exp-lft-sqr_binary64_474 exp-cbrt_binary64_473 exp-sqrt_binary64_472 div-exp_binary64_470 rec-exp_binary64_469 prod-exp_binary64_468 exp-diff_binary64_467 exp-neg_binary64_466 exp-sum_binary64_465 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-3cbrt-lft_binary64_444 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 rem-square-sqrt_binary64_431 mul-1-neg_binary64_411 --rgt-identity_binary64_405 mul0-rgt_binary64_402 mul0-lft_binary64_401 div0_binary64_400 *-inverses_binary64_399 lft-mult-inverse_binary64_397 rgt-mult-inverse_binary64_396 remove-double-div_binary64_395 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 associate--l-_binary64_357
Counts
164 → 119
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03044885
17664422
227504297
350804297

prune118.0ms (0.8%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New1190119
Fresh01010
Picked011
Done011
Total11912131
Error
0.0b
Counts
131 → 12
Compiler

Compiled 2886 to 729 computations (74.7% saved)

regimes2.0s (12.7%)

Accuracy

Total 0.3b remaining (95%)

Threshold costs 0.3b (95%)

Compiler

Compiled 20165 to 11827 computations (41.3% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_350
sub-neg_binary64_412 +-commutative_binary64_349
neg-mul-1_binary64_415 neg-sub0_binary64_414
cancel-sign-sub-inv_binary64_385 distribute-rgt-neg-in_binary64_377
distribute-lft-neg-out_binary64_378 distribute-lft-neg-in_binary64_376
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_679 if-if-and_binary64_678 if-if-or-not_binary64_677 if-if-or_binary64_676 if-not_binary64_675 if-same_binary64_674 if-false_binary64_673 if-true_binary64_672 tan-0_binary64_548 cos-0_binary64_547 sin-0_binary64_546 unpow1_binary64_477 e-exp-1_binary64_464 1-exp_binary64_463 exp-1-e_binary64_462 exp-0_binary64_461 sqr-abs_binary64_434 sqr-neg_binary64_433 unsub-neg_binary64_413 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 sub0-neg_binary64_406 --rgt-identity_binary64_405 +-rgt-identity_binary64_404 +-lft-identity_binary64_403 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 distribute-neg-in_binary64_380 distribute-rgt-neg-out_binary64_379
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01326
12126
23126
33726
44126
54226
64226

end0.0ms (0%)

sample5.1s (32.5%)

Algorithm
intervals
Results
1.0s3494×body1024valid
293.0ms1392×body512valid
154.0ms2337×body128valid
115.0ms198×body2048valid
86.0ms579×body256valid
Compiler

Compiled 3997 to 2349 computations (41.2% saved)

Profiling

Loading profile data...