Details

Time bar (total: 15.1s)

analyze2.4s (16%)

Algorithm
search
egg-herbie
Rules
230×unsub-neg_binary64_413
191×sub-neg_binary64_412
185×cancel-sign-sub-inv_binary64_385
169×distribute-rgt-in_binary64_369
130×distribute-rgt-neg-in_binary64_377
129×neg-mul-1_binary64_415
127×associate--r+_binary64_355
108×distribute-lft-neg-in_binary64_376
107×neg-sub0_binary64_414
98×*-commutative_binary64_350
93×distribute-lft-neg-out_binary64_378
73×associate-*r*_binary64_359
68×distribute-rgt-neg-out_binary64_379
61×distribute-lft-in_binary64_368
53×distribute-neg-in_binary64_380 +-commutative_binary64_349
44×associate--l-_binary64_357
43×associate--l+_binary64_356
42×associate-+l-_binary64_354
39×associate--r-_binary64_358
37×remove-double-neg_binary64_407 sub0-neg_binary64_406 associate-*l*_binary64_360
28×mul0-rgt_binary64_402 mul0-lft_binary64_401 associate-+r+_binary64_351
23×associate-+l+_binary64_352
21×distribute-neg-out_binary64_381
20×distribute-rgt-out--_binary64_373
18×associate-+r-_binary64_353
16×*-rgt-identity_binary64_409 +-rgt-identity_binary64_404
15×*-lft-identity_binary64_408
11×cos-neg_binary64_550 +-lft-identity_binary64_403
10×sin-neg_binary64_549 distribute-rgt-out_binary64_372
mul-1-neg_binary64_411
cancel-sign-sub_binary64_384
1-exp_binary64_463
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 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 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 /-rgt-identity_binary64_410 --rgt-identity_binary64_405 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 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-rgt1-in_binary64_375 distribute-lft1-in_binary64_374 distribute-lft-out--_binary64_371 distribute-lft-out_binary64_370 count-2_binary64_367 associate-/l/_binary64_366 associate-/r/_binary64_365 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l/_binary64_362 associate-*r/_binary64_361
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062224
1100224
2116224
3144224
4170224
5295224
6371224
7574224
8743224
9823224
101039224
111224224
121275224
131300224
141326224
151340224
161344224
171273224
044
144
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
9.4%90.4%0.2%9
9.4%90.4%0.2%10
10.9%88.9%0.2%11
10.9%88.9%0.2%12
10.9%88.9%0.2%13
10.9%88.9%0.2%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample152.0ms (1%)

Algorithm
intervals
Results
99.0ms149×body1024valid
24.0ms61×body512valid
6.0ms23×body256valid
3.0ms21×body128valid
3.0msbody2048valid
Compiler

Compiled 41 to 33 computations (19.5% saved)

simplify30.0ms (0.2%)

Algorithm
egg-herbie
Rules
49×sub-neg_binary64_412
44×distribute-rgt-in_binary64_369
38×cancel-sign-sub-inv_binary64_385
31×unsub-neg_binary64_413
27×neg-mul-1_binary64_415
26×distribute-lft-neg-out_binary64_378
25×distribute-rgt-neg-in_binary64_377
24×neg-sub0_binary64_414 associate--r+_binary64_355
22×associate-*l*_binary64_360
18×distribute-neg-in_binary64_380 distribute-lft-in_binary64_368 associate-*r*_binary64_359
17×distribute-rgt-neg-out_binary64_379 distribute-lft-neg-in_binary64_376
15×associate-+l-_binary64_354 *-commutative_binary64_350
associate--r-_binary64_358 associate--l+_binary64_356 +-commutative_binary64_349
*-rgt-identity_binary64_409 *-lft-identity_binary64_408 sub0-neg_binary64_406
associate-+l+_binary64_352
remove-double-neg_binary64_407 mul0-rgt_binary64_402 mul0-lft_binary64_401
+-lft-identity_binary64_403 associate--l-_binary64_357 associate-+r+_binary64_351
sin-neg_binary64_549 +-rgt-identity_binary64_404
cos-neg_binary64_550 mul-1-neg_binary64_411
1-exp_binary64_463 --rgt-identity_binary64_405 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 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 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 /-rgt-identity_binary64_410 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_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 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 count-2_binary64_367 associate-/l/_binary64_366 associate-/r/_binary64_365 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l/_binary64_362 associate-*r/_binary64_361
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01532
12132
22632
33232
43832
56232
68932
711332
814732
917432
1022332
1121132
1223232
1326132
1426132
1527132
1628432
1729232
1829932
1929832
2027132

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 20 to 14 computations (30% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.6b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
3.0b
(cos.f64 (-.f64 lambda1 lambda2))
3.0b
(sin.f64 (-.f64 lambda1 lambda2))

rewrite106.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.3b
Rules
add-cube-cbrt_binary64_454 cancel-sign-sub-inv_binary64_385 add-sqr-sqrt_binary64_441 *-un-lft-identity_binary64_419 add-log-exp_binary64_458
sin-sum_binary64_552 pow1_binary64_480 add-exp-log_binary64_457 add-cbrt-cube_binary64_455 cos-sum_binary64_553
cos-diff_binary64_556
sub-neg_binary64_412 associate-+r+_binary64_351
sin-diff_binary64_555 sum-log_binary64_510 flip3-+_binary64_422 flip-+_binary64_393 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 +-commutative_binary64_349
Counts
4 → 44
Calls

4 calls:

9.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
5.0ms
(sin.f64 (-.f64 lambda1 lambda2))
5.0ms
(cos.f64 (-.f64 lambda1 lambda2))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 1356 to 285 computations (79% saved)

series846.0ms (5.6%)

Error
0.4b
Counts
4 → 49
Calls

4 calls:

500.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
163.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
68.0ms
(sin.f64 (-.f64 lambda1 lambda2))
60.0ms
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 3016 to 1518 computations (49.7% saved)

simplify111.0ms (0.7%)

Algorithm
egg-herbie
Rules
498×sub-neg_binary64_412
321×associate-*l*_binary64_360
312×associate-*r*_binary64_359
291×distribute-rgt-neg-in_binary64_377
280×associate-+l+_binary64_352
279×distribute-lft-neg-in_binary64_376
242×cancel-sign-sub-inv_binary64_385
220×associate-+r+_binary64_351
219×neg-mul-1_binary64_415
202×neg-sub0_binary64_414
189×distribute-rgt-in_binary64_369
169×*-commutative_binary64_350
168×+-commutative_binary64_349
165×unsub-neg_binary64_413 distribute-lft-in_binary64_368 associate-+l-_binary64_354
129×associate--l+_binary64_356
120×distribute-rgt-out_binary64_372
74×distribute-rgt-out--_binary64_373
72×associate-+r-_binary64_353
62×unswap-sqr_binary64_387
61×associate--r+_binary64_355
52×sqr-pow_binary64_391
50×distribute-lft-out_binary64_370
34×distribute-lft-out--_binary64_371
27×distribute-lft-neg-out_binary64_378
26×+-rgt-identity_binary64_404
20×cube-unmult_binary64_456
19×distribute-rgt-neg-out_binary64_379
17×cube-prod_binary64_447 sub0-neg_binary64_406
16×unpow3_binary64_485
15×pow-plus_binary64_482
swap-sqr_binary64_386 distribute-neg-in_binary64_380
associate--l-_binary64_357
exp-sum_binary64_465 pow-sqr_binary64_392 distribute-rgt1-in_binary64_375
cube-mult_binary64_449
cos-neg_binary64_550 sin-neg_binary64_549 rem-sqrt-square_binary64_432
unpow2_binary64_484 unpow1/2_binary64_483 unpow1_binary64_477 mul0-rgt_binary64_402 mul0-lft_binary64_401 cancel-sign-sub_binary64_384 associate--r-_binary64_358
exp-prod_binary64_471 difference-of-squares_binary64_388
prod-exp_binary64_468 1-exp_binary64_463 rem-3cbrt-lft_binary64_444 rem-square-sqrt_binary64_431 distribute-lft1-in_binary64_374 associate-/l/_binary64_366 associate-*r/_binary64_361
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 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 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 exp-diff_binary64_467 exp-neg_binary64_466 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-div_binary64_448 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 times-frac_binary64_425 div-sub_binary64_424 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 *-rgt-identity_binary64_409 *-lft-identity_binary64_408 remove-double-neg_binary64_407 --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 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 count-2_binary64_367 associate-/r/_binary64_365 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l/_binary64_362
Counts
93 → 61
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01691965
13851817
28551797
322971775
445171775
552441775

prune104.0ms (0.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New52961
Fresh000
Picked101
Done000
Total53962
Error
0.3b
Counts
62 → 9
Compiler

Compiled 1920 to 419 computations (78.2% saved)

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.6b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
3.0b
(cos.f64 (-.f64 lambda1 lambda2))

rewrite98.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
add-sqr-sqrt_binary64_441
add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419
pow1_binary64_480 add-log-exp_binary64_458 add-exp-log_binary64_457 add-cbrt-cube_binary64_455
cos-sum_binary64_553
cos-diff_binary64_556 cancel-sign-sub-inv_binary64_385 associate-*l*_binary64_360 associate-*r*_binary64_359
associate-+r+_binary64_351
sub-neg_binary64_412 sum-log_binary64_510 flip3-+_binary64_422 flip-+_binary64_393 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 +-commutative_binary64_349 pow-prod-down_binary64_490 prod-exp_binary64_468 cbrt-unprod_binary64_452 unswap-sqr_binary64_387 *-commutative_binary64_350
Counts
4 → 50
Calls

4 calls:

5.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
5.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
5.0ms
(cos.f64 (-.f64 lambda1 lambda2))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 1857 to 334 computations (82% saved)

series975.0ms (6.4%)

Error
0.3b
Counts
4 → 47
Calls

4 calls:

520.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
208.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
133.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
63.0ms
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 3820 to 1952 computations (48.9% saved)

simplify143.0ms (0.9%)

Algorithm
egg-herbie
Rules
475×associate-*l*_binary64_360
413×sub-neg_binary64_412
322×distribute-rgt-neg-in_binary64_377
296×distribute-lft-neg-in_binary64_376
276×associate-+l+_binary64_352
229×cancel-sign-sub-inv_binary64_385
217×*-commutative_binary64_350
213×associate-+r+_binary64_351
202×distribute-rgt-in_binary64_369
187×neg-mul-1_binary64_415
174×neg-sub0_binary64_414 unsub-neg_binary64_413
171×distribute-lft-in_binary64_368
159×+-commutative_binary64_349
132×associate-+l-_binary64_354
124×associate-*r*_binary64_359
112×associate--l+_binary64_356
72×sqr-pow_binary64_391
61×associate-+r-_binary64_353
59×distribute-rgt-out_binary64_372
58×distribute-lft-out_binary64_370
53×associate--r+_binary64_355
52×unswap-sqr_binary64_387
45×distribute-rgt-out--_binary64_373
32×cube-prod_binary64_447
30×distribute-lft-out--_binary64_371
29×unpow3_binary64_485
24×cube-unmult_binary64_456 +-rgt-identity_binary64_404
21×*-rgt-identity_binary64_409 distribute-lft-neg-out_binary64_378
17×*-lft-identity_binary64_408
16×distribute-rgt-neg-out_binary64_379
15×sub0-neg_binary64_406
14×exp-prod_binary64_471
13×swap-sqr_binary64_386
11×pow-plus_binary64_482 cube-mult_binary64_449
10×exp-sum_binary64_465 pow-sqr_binary64_392
log-prod_binary64_505
distribute-neg-in_binary64_380
rem-sqrt-square_binary64_432 distribute-rgt1-in_binary64_375
unpow1/2_binary64_483
difference-of-squares_binary64_388
cos-neg_binary64_550 unpow2_binary64_484 unpow1_binary64_477 associate--l-_binary64_357
sin-neg_binary64_549 associate-/l*_binary64_364
mul0-rgt_binary64_402 mul0-lft_binary64_401 cancel-sign-sub_binary64_384 associate-/l/_binary64_366 associate-*r/_binary64_361 associate--r-_binary64_358
prod-exp_binary64_468 1-exp_binary64_463 exp-1-e_binary64_462 rem-3cbrt-lft_binary64_444 rem-square-sqrt_binary64_431 distribute-lft1-in_binary64_374 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 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 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 exp-diff_binary64_467 exp-neg_binary64_466 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-div_binary64_448 cube-neg_binary64_446 rem-3cbrt-rft_binary64_445 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 sqr-neg_binary64_433 times-frac_binary64_425 div-sub_binary64_424 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 remove-double-neg_binary64_407 --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 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 associate-/r/_binary64_365 associate-/r*_binary64_363 associate-*l/_binary64_362
Counts
97 → 64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01802247
14202051
210382034
322892017
443332017
549812017
649562017

prune105.0ms (0.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New63164
Fresh088
Picked101
Done000
Total64973
Error
0.1b
Counts
73 → 9
Compiler

Compiled 2416 to 429 computations (82.2% saved)

localize26.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.6b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))

rewrite118.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
12×add-sqr-sqrt_binary64_441
pow1_binary64_480 add-exp-log_binary64_457 add-cbrt-cube_binary64_455 add-cube-cbrt_binary64_454 *-un-lft-identity_binary64_419
add-log-exp_binary64_458 associate-*l*_binary64_360 associate-*r*_binary64_359
associate-+r+_binary64_351 pow-prod-down_binary64_490 prod-exp_binary64_468 cbrt-unprod_binary64_452 unswap-sqr_binary64_387 *-commutative_binary64_350
sum-log_binary64_510 flip3-+_binary64_422 flip-+_binary64_393 distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368 +-commutative_binary64_349 sin-mult_binary64_574
Counts
4 → 57
Calls

4 calls:

6.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
5.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
5.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Compiler

Compiled 2538 to 380 computations (85% saved)

series1.7s (11%)

Error
0.1b
Counts
4 → 46
Calls

4 calls:

1.0s
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
264.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
152.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
132.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
Compiler

Compiled 4925 to 2166 computations (56% saved)

simplify115.0ms (0.8%)

Algorithm
egg-herbie
Rules
480×distribute-rgt-in_binary64_369
474×cancel-sign-sub-inv_binary64_385
468×sub-neg_binary64_412
464×distribute-lft-in_binary64_368
254×associate--l+_binary64_356
209×associate-*r*_binary64_359
189×associate-*l*_binary64_360
180×distribute-rgt-neg-in_binary64_377
168×neg-mul-1_binary64_415 neg-sub0_binary64_414
162×associate--r+_binary64_355
160×distribute-lft-neg-in_binary64_376
120×*-commutative_binary64_350
77×unsub-neg_binary64_413
71×+-commutative_binary64_349
63×distribute-rgt-out_binary64_372
58×exp-prod_binary64_471
53×distribute-neg-in_binary64_380
50×sqr-pow_binary64_391
41×associate-+l+_binary64_352
36×associate-+r+_binary64_351
21×*-rgt-identity_binary64_409 distribute-lft-neg-out_binary64_378 distribute-rgt-out--_binary64_373
18×cube-prod_binary64_447
16×log-prod_binary64_505
15×distribute-lft-out_binary64_370
13×exp-sum_binary64_465
12×cube-unmult_binary64_456 *-lft-identity_binary64_408 swap-sqr_binary64_386
10×unswap-sqr_binary64_387
unpow3_binary64_485 distribute-rgt-neg-out_binary64_379
unpow1/2_binary64_483 cube-mult_binary64_449
unpow2_binary64_484 pow-plus_binary64_482 unpow1_binary64_477 rem-sqrt-square_binary64_432
pow-sqr_binary64_392 distribute-rgt1-in_binary64_375 associate--l-_binary64_357
difference-of-squares_binary64_388 distribute-lft-out--_binary64_371
prod-exp_binary64_468 1-exp_binary64_463 exp-1-e_binary64_462 distribute-lft1-in_binary64_374 associate-+l-_binary64_354 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 log-pow_binary64_508 log-rec_binary64_507 log-div_binary64_506 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 exp-diff_binary64_467 exp-neg_binary64_466 e-exp-1_binary64_464 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-div_binary64_448 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 times-frac_binary64_425 div-sub_binary64_424 mul-1-neg_binary64_411 /-rgt-identity_binary64_410 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 difference-of-sqr--1_binary64_390 difference-of-sqr-1_binary64_389 cancel-sign-sub_binary64_384 distribute-neg-frac_binary64_383 distribute-frac-neg_binary64_382 distribute-neg-out_binary64_381 count-2_binary64_367 associate-/l/_binary64_366 associate-/r/_binary64_365 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l/_binary64_362 associate-*r/_binary64_361 associate--r-_binary64_358
Counts
103 → 75
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02013087
15082803
216842767
345162767
451092767

prune130.0ms (0.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New74175
Fresh088
Picked011
Done000
Total741084
Error
0.1b
Counts
84 → 10
Compiler

Compiled 3394 to 569 computations (83.2% saved)

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

3.0b
(cos.f64 (-.f64 lambda1 lambda2))
3.0b
(cos.f64 (-.f64 lambda1 lambda2))
3.0b
(cos.f64 (-.f64 lambda1 lambda2))
3.0b
(sin.f64 (-.f64 lambda1 lambda2))

rewrite135.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
12×cancel-sign-sub-inv_binary64_385 cos-sum_binary64_553
add-cube-cbrt_binary64_454 add-sqr-sqrt_binary64_441 *-un-lft-identity_binary64_419
sub-neg_binary64_412 sin-sum_binary64_552 pow1_binary64_480 add-log-exp_binary64_458 add-exp-log_binary64_457 add-cbrt-cube_binary64_455
cos-diff_binary64_556
sin-diff_binary64_555
Counts
4 → 48
Calls

4 calls:

7.0ms
(cos.f64 (-.f64 lambda1 lambda2))
6.0ms
(cos.f64 (-.f64 lambda1 lambda2))
5.0ms
(cos.f64 (-.f64 lambda1 lambda2))
5.0ms
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 2784 to 625 computations (77.6% saved)

series350.0ms (2.3%)

Error
0.1b
Counts
4 → 34
Calls

4 calls:

83.0ms
(sin.f64 (-.f64 lambda1 lambda2))
70.0ms
(cos.f64 (-.f64 lambda1 lambda2))
69.0ms
(cos.f64 (-.f64 lambda1 lambda2))
66.0ms
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 4700 to 1908 computations (59.4% saved)

simplify216.0ms (1.4%)

Algorithm
egg-herbie
Rules
558×sub-neg_binary64_412
510×distribute-rgt-neg-in_binary64_377
496×cancel-sign-sub-inv_binary64_385
411×unsub-neg_binary64_413
395×distribute-lft-neg-in_binary64_376
335×neg-sub0_binary64_414
311×neg-mul-1_binary64_415
296×distribute-neg-in_binary64_380
275×*-commutative_binary64_350
240×unswap-sqr_binary64_387
223×distribute-lft-out--_binary64_371
208×distribute-lft-out_binary64_370
194×distribute-rgt-in_binary64_369
186×associate--r-_binary64_358
165×sqr-pow_binary64_391 distribute-neg-out_binary64_381
142×distribute-lft-in_binary64_368
111×remove-double-neg_binary64_407
107×distribute-lft-neg-out_binary64_378
102×associate-*r*_binary64_359
98×distribute-rgt-out--_binary64_373
93×cube-prod_binary64_447
84×associate-*l*_binary64_360
79×distribute-rgt-neg-out_binary64_379
78×distribute-rgt-out_binary64_372
71×cancel-sign-sub_binary64_384
66×associate--r+_binary64_355
65×+-commutative_binary64_349
61×mul0-rgt_binary64_402 mul0-lft_binary64_401 associate-+l-_binary64_354
52×unpow3_binary64_485
49×associate-+r+_binary64_351
43×pow-sqr_binary64_392
42×associate--l+_binary64_356
40×swap-sqr_binary64_386
36×associate-+l+_binary64_352
32×--rgt-identity_binary64_405
30×sub0-neg_binary64_406
28×associate-+r-_binary64_353
24×cube-mult_binary64_449
22×pow-plus_binary64_482 +-rgt-identity_binary64_404
19×cube-unmult_binary64_456
17×rem-sqrt-square_binary64_432
15×associate--l-_binary64_357
11×unpow2_binary64_484 sqr-neg_binary64_433
unpow1_binary64_477 cube-neg_binary64_446
sin-neg_binary64_549
unpow1/2_binary64_483
distribute-rgt1-in_binary64_375
cos-neg_binary64_550
mul-1-neg_binary64_411
*-lft-identity_binary64_408
log-prod_binary64_505 exp-prod_binary64_471 exp-neg_binary64_466 div-sub_binary64_424 distribute-lft1-in_binary64_374
exp-sum_binary64_465 1-exp_binary64_463 rem-3cbrt-lft_binary64_444 rem-square-sqrt_binary64_431 *-rgt-identity_binary64_409 +-lft-identity_binary64_403 distribute-frac-neg_binary64_382
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 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 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 e-exp-1_binary64_464 exp-1-e_binary64_462 exp-0_binary64_461 rem-log-exp_binary64_460 rem-exp-log_binary64_459 cube-div_binary64_448 rem-3cbrt-rft_binary64_445 rem-cbrt-cube_binary64_443 rem-cube-cbrt_binary64_442 sqr-abs_binary64_434 times-frac_binary64_425 /-rgt-identity_binary64_410 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 difference-of-squares_binary64_388 distribute-neg-frac_binary64_383 count-2_binary64_367 associate-/l/_binary64_366 associate-/r/_binary64_365 associate-/l*_binary64_364 associate-/r*_binary64_363 associate-*l/_binary64_362 associate-*r/_binary64_361
Counts
82 → 33
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
087990
1162936
2270925
3695917
41240917
52810917
63908917
74601917
84686917
94907917
104987917
114776917

prune67.0ms (0.4%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New33033
Fresh088
Picked011
Done011
Total331043
Error
0.1b
Counts
43 → 10
Compiler

Compiled 1839 to 390 computations (78.8% saved)

regimes1.1s (7.5%)

Accuracy

Total 0.1b remaining (62.4%)

Threshold costs 0.1b (62.4%)

Compiler

Compiled 14308 to 8151 computations (43% saved)

bsearch0.0ms (0%)

simplify5.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_350
+-commutative_binary64_349
sub-neg_binary64_412
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
02256
13656
24656
35256
45656
55756
65756

end0.0ms (0%)

sample6.0s (39.7%)

Algorithm
intervals
Results
2.9s4457×body1024valid
679.0ms1719×body512valid
205.0ms766×body256valid
164.0ms120×body2048valid
122.0ms938×body128valid
Compiler

Compiled 2091 to 1193 computations (42.9% saved)

Profiling

Loading profile data...