Details

Time bar (total: 12.1s)

analyze151.0ms (1.2%)

Algorithm
search
egg-herbie
Rules
28×sub-neg_binary64_1435
25×cancel-sign-sub-inv_binary64_1408
18×distribute-rgt-in_binary64_1392
16×neg-mul-1_binary64_1438
15×associate--r+_binary64_1378
14×unsub-neg_binary64_1436
12×associate--r-_binary64_1381
10×neg-sub0_binary64_1437 distribute-lft-in_binary64_1391
*-lft-identity_binary64_1431 sub0-neg_binary64_1429 distribute-neg-in_binary64_1403 +-commutative_binary64_1372
distribute-lft-neg-out_binary64_1401 distribute-rgt-neg-in_binary64_1400 associate-+l-_binary64_1377
+-lft-identity_binary64_1426 associate-+l+_binary64_1375
distribute-rgt-neg-out_binary64_1402 *-commutative_binary64_1373
*-rgt-identity_binary64_1432
--rgt-identity_binary64_1428 associate--l+_binary64_1379 associate-+r-_binary64_1376 associate-+r+_binary64_1374
1-exp_binary64_1486 remove-double-neg_binary64_1430 +-rgt-identity_binary64_1427 distribute-lft-neg-in_binary64_1399
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_1705 erf-erfc_binary64_1704 erf-odd_binary64_1703 if-if-and-not_binary64_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 not-gte_binary64_1694 not-lte_binary64_1693 not-gt_binary64_1692 not-lt_binary64_1691 gte-same_binary64_1690 lte-same_binary64_1689 gt-same_binary64_1688 lt-same_binary64_1687 sinh---cosh_binary64_1634 sinh-+-cosh_binary64_1633 sinh-cosh_binary64_1632 tanh-def-c_binary64_1631 tanh-def-b_binary64_1630 tanh-def-a_binary64_1629 cosh-def_binary64_1628 sinh-def_binary64_1627 tan-neg_binary64_1574 cos-neg_binary64_1573 sin-neg_binary64_1572 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 hang-m-tan_binary64_1568 hang-p-tan_binary64_1567 hang-m0-tan_binary64_1566 hang-p0-tan_binary64_1565 hang-0m-tan_binary64_1564 hang-0p-tan_binary64_1563 tan-+PI/2_binary64_1562 tan-+PI_binary64_1561 tan-PI_binary64_1560 tan-PI/3_binary64_1559 tan-PI/4_binary64_1558 tan-PI/6_binary64_1557 cos-+PI/2_binary64_1556 cos-+PI_binary64_1555 cos-PI_binary64_1554 cos-PI/2_binary64_1553 cos-PI/3_binary64_1552 cos-PI/4_binary64_1551 cos-PI/6_binary64_1550 sin-+PI/2_binary64_1549 sin-+PI_binary64_1548 sin-PI_binary64_1547 sin-PI/2_binary64_1546 sin-PI/3_binary64_1545 sin-PI/4_binary64_1544 sin-PI/6_binary64_1543 sub-1-sin_binary64_1542 sub-1-cos_binary64_1541 -1-add-sin_binary64_1540 -1-add-cos_binary64_1539 1-sub-sin_binary64_1538 1-sub-cos_binary64_1537 cos-sin-sum_binary64_1536 log-E_binary64_1532 log-pow_binary64_1531 log-rec_binary64_1530 log-div_binary64_1529 log-prod_binary64_1528 pow-base-0_binary64_1526 unpow1/3_binary64_1509 unpow3_binary64_1508 unpow2_binary64_1507 unpow1/2_binary64_1506 pow-plus_binary64_1505 exp-to-pow_binary64_1504 pow-base-1_binary64_1502 unpow0_binary64_1501 unpow1_binary64_1500 unpow-1_binary64_1499 exp-lft-cube_binary64_1498 exp-lft-sqr_binary64_1497 exp-cbrt_binary64_1496 exp-sqrt_binary64_1495 exp-prod_binary64_1494 div-exp_binary64_1493 rec-exp_binary64_1492 prod-exp_binary64_1491 exp-diff_binary64_1490 exp-neg_binary64_1489 exp-sum_binary64_1488 e-exp-1_binary64_1487 exp-1-e_binary64_1485 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 cube-unmult_binary64_1479 cube-mult_binary64_1472 cube-div_binary64_1471 cube-prod_binary64_1470 cube-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 rem-3cbrt-lft_binary64_1467 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 sqr-neg_binary64_1456 rem-sqrt-square_binary64_1455 rem-square-sqrt_binary64_1454 times-frac_binary64_1448 div-sub_binary64_1447 mul-1-neg_binary64_1434 /-rgt-identity_binary64_1433 mul0-rgt_binary64_1425 mul0-lft_binary64_1424 div0_binary64_1423 *-inverses_binary64_1422 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 remove-double-div_binary64_1418 pow-sqr_binary64_1415 sqr-pow_binary64_1414 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 difference-of-squares_binary64_1411 unswap-sqr_binary64_1410 swap-sqr_binary64_1409 cancel-sign-sub_binary64_1407 distribute-neg-frac_binary64_1406 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-rgt1-in_binary64_1398 distribute-lft1-in_binary64_1397 distribute-rgt-out--_binary64_1396 distribute-rgt-out_binary64_1395 distribute-lft-out--_binary64_1394 distribute-lft-out_binary64_1393 count-2_binary64_1390 associate-/l/_binary64_1389 associate-/r/_binary64_1388 associate-/l*_binary64_1387 associate-/r*_binary64_1386 associate-*l/_binary64_1385 associate-*r/_binary64_1384 associate-*l*_binary64_1383 associate-*r*_binary64_1382 associate--l-_binary64_1380
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
11422
22222
33322
44222
56622
69922
711622
813922
914322
1013122
1111722
022
122
Search
TrueOtherFalseIter
0%99.9%0.1%0
99.9%0%0.1%1
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample86.0ms (0.7%)

Algorithm
intervals
Results
35.0ms101×body1024valid
26.0ms52×body2048valid
8.0ms41×body512valid
3.0ms22×body256valid
3.0ms40×body128valid
Compiler

Compiled 15 to 15 computations (0% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×sub-neg_binary64_1435
14×cancel-sign-sub-inv_binary64_1408
10×distribute-rgt-in_binary64_1392
neg-mul-1_binary64_1438
associate--r+_binary64_1378
unsub-neg_binary64_1436
neg-sub0_binary64_1437 associate--r-_binary64_1381
distribute-neg-in_binary64_1403 distribute-lft-neg-out_binary64_1401 distribute-rgt-neg-in_binary64_1400 distribute-lft-in_binary64_1391 +-commutative_binary64_1372
*-lft-identity_binary64_1431 sub0-neg_binary64_1429 associate-+l-_binary64_1377
+-lft-identity_binary64_1426 distribute-rgt-neg-out_binary64_1402 associate-+l+_binary64_1375 *-commutative_binary64_1373
*-rgt-identity_binary64_1432
1-exp_binary64_1486 remove-double-neg_binary64_1430 --rgt-identity_binary64_1428 +-rgt-identity_binary64_1427 distribute-lft-neg-in_binary64_1399 associate--l+_binary64_1379 associate-+r-_binary64_1376 associate-+r+_binary64_1374
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_1705 erf-erfc_binary64_1704 erf-odd_binary64_1703 if-if-and-not_binary64_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 not-gte_binary64_1694 not-lte_binary64_1693 not-gt_binary64_1692 not-lt_binary64_1691 gte-same_binary64_1690 lte-same_binary64_1689 gt-same_binary64_1688 lt-same_binary64_1687 sinh---cosh_binary64_1634 sinh-+-cosh_binary64_1633 sinh-cosh_binary64_1632 tanh-def-c_binary64_1631 tanh-def-b_binary64_1630 tanh-def-a_binary64_1629 cosh-def_binary64_1628 sinh-def_binary64_1627 tan-neg_binary64_1574 cos-neg_binary64_1573 sin-neg_binary64_1572 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 hang-m-tan_binary64_1568 hang-p-tan_binary64_1567 hang-m0-tan_binary64_1566 hang-p0-tan_binary64_1565 hang-0m-tan_binary64_1564 hang-0p-tan_binary64_1563 tan-+PI/2_binary64_1562 tan-+PI_binary64_1561 tan-PI_binary64_1560 tan-PI/3_binary64_1559 tan-PI/4_binary64_1558 tan-PI/6_binary64_1557 cos-+PI/2_binary64_1556 cos-+PI_binary64_1555 cos-PI_binary64_1554 cos-PI/2_binary64_1553 cos-PI/3_binary64_1552 cos-PI/4_binary64_1551 cos-PI/6_binary64_1550 sin-+PI/2_binary64_1549 sin-+PI_binary64_1548 sin-PI_binary64_1547 sin-PI/2_binary64_1546 sin-PI/3_binary64_1545 sin-PI/4_binary64_1544 sin-PI/6_binary64_1543 sub-1-sin_binary64_1542 sub-1-cos_binary64_1541 -1-add-sin_binary64_1540 -1-add-cos_binary64_1539 1-sub-sin_binary64_1538 1-sub-cos_binary64_1537 cos-sin-sum_binary64_1536 log-E_binary64_1532 log-pow_binary64_1531 log-rec_binary64_1530 log-div_binary64_1529 log-prod_binary64_1528 pow-base-0_binary64_1526 unpow1/3_binary64_1509 unpow3_binary64_1508 unpow2_binary64_1507 unpow1/2_binary64_1506 pow-plus_binary64_1505 exp-to-pow_binary64_1504 pow-base-1_binary64_1502 unpow0_binary64_1501 unpow1_binary64_1500 unpow-1_binary64_1499 exp-lft-cube_binary64_1498 exp-lft-sqr_binary64_1497 exp-cbrt_binary64_1496 exp-sqrt_binary64_1495 exp-prod_binary64_1494 div-exp_binary64_1493 rec-exp_binary64_1492 prod-exp_binary64_1491 exp-diff_binary64_1490 exp-neg_binary64_1489 exp-sum_binary64_1488 e-exp-1_binary64_1487 exp-1-e_binary64_1485 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 cube-unmult_binary64_1479 cube-mult_binary64_1472 cube-div_binary64_1471 cube-prod_binary64_1470 cube-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 rem-3cbrt-lft_binary64_1467 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 sqr-neg_binary64_1456 rem-sqrt-square_binary64_1455 rem-square-sqrt_binary64_1454 times-frac_binary64_1448 div-sub_binary64_1447 mul-1-neg_binary64_1434 /-rgt-identity_binary64_1433 mul0-rgt_binary64_1425 mul0-lft_binary64_1424 div0_binary64_1423 *-inverses_binary64_1422 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 remove-double-div_binary64_1418 pow-sqr_binary64_1415 sqr-pow_binary64_1414 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 difference-of-squares_binary64_1411 unswap-sqr_binary64_1410 swap-sqr_binary64_1409 cancel-sign-sub_binary64_1407 distribute-neg-frac_binary64_1406 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-rgt1-in_binary64_1398 distribute-lft1-in_binary64_1397 distribute-rgt-out--_binary64_1396 distribute-rgt-out_binary64_1395 distribute-lft-out--_binary64_1394 distribute-lft-out_binary64_1393 count-2_binary64_1390 associate-/l/_binary64_1389 associate-/r/_binary64_1388 associate-/l*_binary64_1387 associate-/r*_binary64_1386 associate-*l/_binary64_1385 associate-*r/_binary64_1384 associate-*l*_binary64_1383 associate-*r*_binary64_1382 associate--l-_binary64_1380
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11011
21511
32111
42711
54211
66511
77811
89011
99211
108611
117211

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 7 to 6 computations (14.3% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
3.1b
(sin.f64 (+.f64 x eps))

rewrite44.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
24.0b
Rules
add-sqr-sqrt_binary64_1464 *-un-lft-identity_binary64_1442
add-log-exp_binary64_1481
add-cube-cbrt_binary64_1477 cancel-sign-sub-inv_binary64_1408
sin-sum_binary64_1575 pow1_binary64_1503 add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
diff-sin_binary64_1592 diff-log_binary64_1534 flip3--_binary64_1446 sub-neg_binary64_1435 flip--_binary64_1417 difference-of-squares_binary64_1411 distribute-lft-out--_binary64_1394 associate--l+_binary64_1379
Counts
2 → 26
Calls

2 calls:

7.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
4.0ms
(sin.f64 (+.f64 x eps))
Compiler

Compiled 382 to 101 computations (73.6% saved)

series187.0ms (1.5%)

Error
11.9b
Counts
2 → 23
Calls

2 calls:

108.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
51.0ms
(sin.f64 (+.f64 x eps))
Compiler

Compiled 647 to 389 computations (39.9% saved)

simplify96.0ms (0.8%)

Algorithm
egg-herbie
Rules
408×unsub-neg_binary64_1436
279×distribute-rgt-neg-in_binary64_1400
272×distribute-lft-neg-in_binary64_1399
271×neg-mul-1_binary64_1438
257×neg-sub0_binary64_1437
242×associate-*r*_binary64_1382
234×distribute-rgt-in_binary64_1392
212×associate-*l*_binary64_1383
205×cancel-sign-sub-inv_binary64_1408
200×distribute-lft-in_binary64_1391
186×sub-neg_binary64_1435
149×associate-+l-_binary64_1377
125×associate-+l+_binary64_1375
108×+-commutative_binary64_1372
103×associate-+r+_binary64_1374
94×associate--l+_binary64_1379
87×*-commutative_binary64_1373
86×unswap-sqr_binary64_1410
78×distribute-rgt-out_binary64_1395
77×distribute-lft-out--_binary64_1394
71×distribute-rgt-out--_binary64_1396
65×associate-+r-_binary64_1376
56×distribute-lft-out_binary64_1393
53×distribute-lft-neg-out_binary64_1401
47×associate--r+_binary64_1378
45×distribute-rgt-neg-out_binary64_1402
43×sqr-pow_binary64_1414
28×exp-prod_binary64_1494
23×unpow3_binary64_1508 exp-sum_binary64_1488 associate--l-_binary64_1380
21×+-rgt-identity_binary64_1427
20×pow-plus_binary64_1505
19×cube-unmult_binary64_1479 cube-prod_binary64_1470 sub0-neg_binary64_1429
17×exp-diff_binary64_1490
14×div-sub_binary64_1447
12×difference-of-squares_binary64_1411
10×swap-sqr_binary64_1409
cube-mult_binary64_1472 distribute-neg-in_binary64_1403
mul0-rgt_binary64_1425 mul0-lft_binary64_1424
sqr-neg_binary64_1456 times-frac_binary64_1448 distribute-rgt1-in_binary64_1398
cancel-sign-sub_binary64_1407 associate-/l*_binary64_1387 associate--r-_binary64_1381
rem-sqrt-square_binary64_1455 pow-sqr_binary64_1415
rec-exp_binary64_1492 mul-1-neg_binary64_1434
sin-neg_binary64_1572 unpow2_binary64_1507 unpow1/2_binary64_1506 unpow1_binary64_1500 cube-neg_binary64_1469 +-inverses_binary64_1421 distribute-neg-frac_binary64_1406 count-2_binary64_1390
cos-neg_binary64_1573 log-prod_binary64_1528 div-exp_binary64_1493 1-exp_binary64_1486 rem-3cbrt-lft_binary64_1467 rem-square-sqrt_binary64_1454 --rgt-identity_binary64_1428 distribute-lft1-in_binary64_1397 associate-/r/_binary64_1388 associate-/r*_binary64_1386
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_1705 erf-erfc_binary64_1704 erf-odd_binary64_1703 if-if-and-not_binary64_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 not-gte_binary64_1694 not-lte_binary64_1693 not-gt_binary64_1692 not-lt_binary64_1691 gte-same_binary64_1690 lte-same_binary64_1689 gt-same_binary64_1688 lt-same_binary64_1687 sinh---cosh_binary64_1634 sinh-+-cosh_binary64_1633 sinh-cosh_binary64_1632 tanh-def-c_binary64_1631 tanh-def-b_binary64_1630 tanh-def-a_binary64_1629 cosh-def_binary64_1628 sinh-def_binary64_1627 tan-neg_binary64_1574 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 hang-m-tan_binary64_1568 hang-p-tan_binary64_1567 hang-m0-tan_binary64_1566 hang-p0-tan_binary64_1565 hang-0m-tan_binary64_1564 hang-0p-tan_binary64_1563 tan-+PI/2_binary64_1562 tan-+PI_binary64_1561 tan-PI_binary64_1560 tan-PI/3_binary64_1559 tan-PI/4_binary64_1558 tan-PI/6_binary64_1557 cos-+PI/2_binary64_1556 cos-+PI_binary64_1555 cos-PI_binary64_1554 cos-PI/2_binary64_1553 cos-PI/3_binary64_1552 cos-PI/4_binary64_1551 cos-PI/6_binary64_1550 sin-+PI/2_binary64_1549 sin-+PI_binary64_1548 sin-PI_binary64_1547 sin-PI/2_binary64_1546 sin-PI/3_binary64_1545 sin-PI/4_binary64_1544 sin-PI/6_binary64_1543 sub-1-sin_binary64_1542 sub-1-cos_binary64_1541 -1-add-sin_binary64_1540 -1-add-cos_binary64_1539 1-sub-sin_binary64_1538 1-sub-cos_binary64_1537 cos-sin-sum_binary64_1536 log-E_binary64_1532 log-pow_binary64_1531 log-rec_binary64_1530 log-div_binary64_1529 pow-base-0_binary64_1526 unpow1/3_binary64_1509 exp-to-pow_binary64_1504 pow-base-1_binary64_1502 unpow0_binary64_1501 unpow-1_binary64_1499 exp-lft-cube_binary64_1498 exp-lft-sqr_binary64_1497 exp-cbrt_binary64_1496 exp-sqrt_binary64_1495 prod-exp_binary64_1491 exp-neg_binary64_1489 e-exp-1_binary64_1487 exp-1-e_binary64_1485 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 cube-div_binary64_1471 rem-3cbrt-rft_binary64_1468 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 /-rgt-identity_binary64_1433 *-rgt-identity_binary64_1432 *-lft-identity_binary64_1431 remove-double-neg_binary64_1430 +-lft-identity_binary64_1426 div0_binary64_1423 *-inverses_binary64_1422 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 remove-double-div_binary64_1418 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 associate-/l/_binary64_1389 associate-*l/_binary64_1385 associate-*r/_binary64_1384
Counts
49 → 39
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
098787
1237764
2555726
31795713
44233713
54952713
64922713

prune44.0ms (0.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New36339
Fresh000
Picked101
Done000
Total37340
Error
0.2b
Counts
40 → 3
Compiler

Compiled 565 to 199 computations (64.8% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
0.1b
(*.f64 (sin.f64 eps) (cos.f64 x))
0.2b
(*.f64 (cos.f64 eps) (sin.f64 x))
2.6b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))

rewrite113.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
15×add-sqr-sqrt_binary64_1464
11×add-log-exp_binary64_1481 *-un-lft-identity_binary64_1442
add-cube-cbrt_binary64_1477
pow1_binary64_1503 add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
associate-*l*_binary64_1383 associate-*r*_binary64_1382
cancel-sign-sub-inv_binary64_1408
sum-log_binary64_1533 diff-log_binary64_1534 pow-prod-down_binary64_1513 prod-exp_binary64_1491 cbrt-unprod_binary64_1475 unswap-sqr_binary64_1410 *-commutative_binary64_1373
flip3--_binary64_1446 sub-neg_binary64_1435 flip--_binary64_1417 difference-of-squares_binary64_1411 distribute-lft-out--_binary64_1394 associate--l+_binary64_1379 sin-cos-mult_binary64_1598 flip3-+_binary64_1445 flip-+_binary64_1416 +-commutative_binary64_1372
Counts
4 → 66
Calls

4 calls:

9.0ms
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))
7.0ms
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
5.0ms
(*.f64 (sin.f64 eps) (cos.f64 x))
5.0ms
(*.f64 (cos.f64 eps) (sin.f64 x))
Compiler

Compiled 1495 to 285 computations (80.9% saved)

series776.0ms (6.4%)

Error
0.2b
Counts
4 → 43
Calls

4 calls:

270.0ms
(-.f64 (+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))
203.0ms
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
134.0ms
(*.f64 (cos.f64 eps) (sin.f64 x))
129.0ms
(*.f64 (sin.f64 eps) (cos.f64 x))
Compiler

Compiled 1751 to 957 computations (45.3% saved)

simplify121.0ms (1%)

Algorithm
egg-herbie
Rules
390×cancel-sign-sub-inv_binary64_1408
336×distribute-rgt-neg-in_binary64_1400
333×*-commutative_binary64_1373
317×sub-neg_binary64_1435
289×distribute-lft-neg-in_binary64_1399
230×distribute-rgt-in_binary64_1392
204×distribute-lft-in_binary64_1391
164×times-frac_binary64_1448
137×distribute-rgt-out_binary64_1395
135×associate-*r*_binary64_1382
132×associate-*l*_binary64_1383
125×unswap-sqr_binary64_1410
114×+-commutative_binary64_1372
106×associate-+l+_binary64_1375
100×neg-mul-1_binary64_1438
98×neg-sub0_binary64_1437
95×sqr-pow_binary64_1414
91×distribute-rgt-out--_binary64_1396
83×unsub-neg_binary64_1436 associate-+r+_binary64_1374
82×distribute-lft-out_binary64_1393
79×associate--l+_binary64_1379
75×exp-prod_binary64_1494
70×distribute-lft-out--_binary64_1394
68×associate-+l-_binary64_1377
62×associate-+r-_binary64_1376
51×distribute-lft-neg-out_binary64_1401
38×exp-sum_binary64_1488
35×+-rgt-identity_binary64_1427
34×cube-prod_binary64_1470 sub0-neg_binary64_1429 associate--r+_binary64_1378
32×distribute-rgt-neg-out_binary64_1402
31×log-prod_binary64_1528
29×distribute-neg-in_binary64_1403 associate-/l*_binary64_1387
24×swap-sqr_binary64_1409
16×unpow3_binary64_1508 *-lft-identity_binary64_1431
14×*-rgt-identity_binary64_1432 difference-of-squares_binary64_1411 associate-/r*_binary64_1386
13×exp-diff_binary64_1490
12×cube-unmult_binary64_1479 pow-sqr_binary64_1415
cancel-sign-sub_binary64_1407 distribute-rgt1-in_binary64_1398 associate-/l/_binary64_1389 associate-/r/_binary64_1388
rem-sqrt-square_binary64_1455 mul0-rgt_binary64_1425 mul0-lft_binary64_1424
associate-*r/_binary64_1384
unpow1/2_binary64_1506 pow-plus_binary64_1505 cube-mult_binary64_1472 sqr-neg_binary64_1456
div-exp_binary64_1493 distribute-lft1-in_binary64_1397
unpow2_binary64_1507 unpow1_binary64_1500 count-2_binary64_1390
sin-neg_binary64_1572 log-pow_binary64_1531 prod-exp_binary64_1491 1-exp_binary64_1486 exp-1-e_binary64_1485 cube-neg_binary64_1469 rem-3cbrt-lft_binary64_1467 rem-square-sqrt_binary64_1454 associate-*l/_binary64_1385
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_1705 erf-erfc_binary64_1704 erf-odd_binary64_1703 if-if-and-not_binary64_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 not-gte_binary64_1694 not-lte_binary64_1693 not-gt_binary64_1692 not-lt_binary64_1691 gte-same_binary64_1690 lte-same_binary64_1689 gt-same_binary64_1688 lt-same_binary64_1687 sinh---cosh_binary64_1634 sinh-+-cosh_binary64_1633 sinh-cosh_binary64_1632 tanh-def-c_binary64_1631 tanh-def-b_binary64_1630 tanh-def-a_binary64_1629 cosh-def_binary64_1628 sinh-def_binary64_1627 tan-neg_binary64_1574 cos-neg_binary64_1573 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 hang-m-tan_binary64_1568 hang-p-tan_binary64_1567 hang-m0-tan_binary64_1566 hang-p0-tan_binary64_1565 hang-0m-tan_binary64_1564 hang-0p-tan_binary64_1563 tan-+PI/2_binary64_1562 tan-+PI_binary64_1561 tan-PI_binary64_1560 tan-PI/3_binary64_1559 tan-PI/4_binary64_1558 tan-PI/6_binary64_1557 cos-+PI/2_binary64_1556 cos-+PI_binary64_1555 cos-PI_binary64_1554 cos-PI/2_binary64_1553 cos-PI/3_binary64_1552 cos-PI/4_binary64_1551 cos-PI/6_binary64_1550 sin-+PI/2_binary64_1549 sin-+PI_binary64_1548 sin-PI_binary64_1547 sin-PI/2_binary64_1546 sin-PI/3_binary64_1545 sin-PI/4_binary64_1544 sin-PI/6_binary64_1543 sub-1-sin_binary64_1542 sub-1-cos_binary64_1541 -1-add-sin_binary64_1540 -1-add-cos_binary64_1539 1-sub-sin_binary64_1538 1-sub-cos_binary64_1537 cos-sin-sum_binary64_1536 log-E_binary64_1532 log-rec_binary64_1530 log-div_binary64_1529 pow-base-0_binary64_1526 unpow1/3_binary64_1509 exp-to-pow_binary64_1504 pow-base-1_binary64_1502 unpow0_binary64_1501 unpow-1_binary64_1499 exp-lft-cube_binary64_1498 exp-lft-sqr_binary64_1497 exp-cbrt_binary64_1496 exp-sqrt_binary64_1495 rec-exp_binary64_1492 exp-neg_binary64_1489 e-exp-1_binary64_1487 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 cube-div_binary64_1471 rem-3cbrt-rft_binary64_1468 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 div-sub_binary64_1447 mul-1-neg_binary64_1434 /-rgt-identity_binary64_1433 remove-double-neg_binary64_1430 --rgt-identity_binary64_1428 +-lft-identity_binary64_1426 div0_binary64_1423 *-inverses_binary64_1422 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 remove-double-div_binary64_1418 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 distribute-neg-frac_binary64_1406 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 associate--r-_binary64_1381 associate--l-_binary64_1380
Counts
109 → 78
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01832078
14762021
213441905
330881881
446621881
549601881

prune105.0ms (0.9%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New681078
Fresh112
Picked101
Done000
Total701181
Error
0.1b
Counts
81 → 11
Compiler

Compiled 1865 to 624 computations (66.5% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))))
2.3b
(+.f64 (cos.f64 eps) -1)
2.3b
(+.f64 (cos.f64 eps) -1)
2.3b
(+.f64 (cos.f64 eps) -1)

rewrite149.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
11×*-un-lft-identity_binary64_1442
10×add-log-exp_binary64_1481
add-sqr-sqrt_binary64_1464
add-cube-cbrt_binary64_1477
pow1_binary64_1503 add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478 flip3-+_binary64_1445 flip-+_binary64_1416
sum-log_binary64_1533 difference-of-sqr--1_binary64_1413 distribute-lft-out_binary64_1393 +-commutative_binary64_1372 cbrt-prod_binary64_1473
cbrt-div_binary64_1474
pow1/3_binary64_1524
Counts
4 → 52
Calls

4 calls:

4.0ms
(+.f64 (cos.f64 eps) -1)
4.0ms
(+.f64 (cos.f64 eps) -1)
4.0ms
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))))
4.0ms
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 2746 to 1153 computations (58% saved)

series1.1s (8.7%)

Error
0.1b
Counts
4 → 28
Calls

4 calls:

869.0ms
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))))
42.0ms
(+.f64 (cos.f64 eps) -1)
40.0ms
(+.f64 (cos.f64 eps) -1)
39.0ms
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 3868 to 2122 computations (45.1% saved)

simplify115.0ms (1%)

Algorithm
egg-herbie
Rules
698×associate-*l*_binary64_1383
635×associate-*r*_binary64_1382
265×distribute-rgt-in_binary64_1392
245×cancel-sign-sub-inv_binary64_1408
232×distribute-lft-in_binary64_1391
143×neg-sub0_binary64_1437
130×neg-mul-1_binary64_1438
124×sub-neg_binary64_1435
117×unsub-neg_binary64_1436
107×distribute-rgt-neg-in_binary64_1400
103×unswap-sqr_binary64_1410
96×distribute-lft-neg-in_binary64_1399
89×times-frac_binary64_1448
80×*-commutative_binary64_1373
77×associate-/l*_binary64_1387
65×associate-/r*_binary64_1386
60×sqr-pow_binary64_1414
55×distribute-neg-in_binary64_1403
46×unpow3_binary64_1508
45×+-commutative_binary64_1372
43×cube-prod_binary64_1470
38×log-prod_binary64_1528
30×associate-/r/_binary64_1388
27×distribute-lft-neg-out_binary64_1401
25×exp-prod_binary64_1494 distribute-rgt-out_binary64_1395
20×distribute-rgt-out--_binary64_1396 associate--l+_binary64_1379 associate--r+_binary64_1378
19×associate-*l/_binary64_1385 associate-+l+_binary64_1375
18×cube-unmult_binary64_1479
17×pow-plus_binary64_1505 associate-*r/_binary64_1384
16×log-pow_binary64_1531 div-sub_binary64_1447
14×distribute-rgt-neg-out_binary64_1402
12×associate-+r+_binary64_1374
unpow1/3_binary64_1509 rem-sqrt-square_binary64_1455 distribute-lft-out--_binary64_1394
exp-sum_binary64_1488 distribute-neg-frac_binary64_1406
cube-mult_binary64_1472 distribute-lft-out_binary64_1393
unpow2_binary64_1507 unpow1/2_binary64_1506 unpow1_binary64_1500 mul-1-neg_binary64_1434 swap-sqr_binary64_1409
associate-/l/_binary64_1389
cube-neg_binary64_1469 sqr-neg_binary64_1456
exp-to-pow_binary64_1504 exp-diff_binary64_1490 rem-exp-log_binary64_1482 pow-sqr_binary64_1415 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 associate-+l-_binary64_1377 associate-+r-_binary64_1376
sub-1-cos_binary64_1541 prod-exp_binary64_1491 exp-neg_binary64_1489 1-exp_binary64_1486 exp-1-e_binary64_1485 rem-3cbrt-lft_binary64_1467 *-rgt-identity_binary64_1432 remove-double-neg_binary64_1430 difference-of-squares_binary64_1411 distribute-rgt1-in_binary64_1398
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_1705 erf-erfc_binary64_1704 erf-odd_binary64_1703 if-if-and-not_binary64_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 not-gte_binary64_1694 not-lte_binary64_1693 not-gt_binary64_1692 not-lt_binary64_1691 gte-same_binary64_1690 lte-same_binary64_1689 gt-same_binary64_1688 lt-same_binary64_1687 sinh---cosh_binary64_1634 sinh-+-cosh_binary64_1633 sinh-cosh_binary64_1632 tanh-def-c_binary64_1631 tanh-def-b_binary64_1630 tanh-def-a_binary64_1629 cosh-def_binary64_1628 sinh-def_binary64_1627 tan-neg_binary64_1574 cos-neg_binary64_1573 sin-neg_binary64_1572 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 hang-m-tan_binary64_1568 hang-p-tan_binary64_1567 hang-m0-tan_binary64_1566 hang-p0-tan_binary64_1565 hang-0m-tan_binary64_1564 hang-0p-tan_binary64_1563 tan-+PI/2_binary64_1562 tan-+PI_binary64_1561 tan-PI_binary64_1560 tan-PI/3_binary64_1559 tan-PI/4_binary64_1558 tan-PI/6_binary64_1557 cos-+PI/2_binary64_1556 cos-+PI_binary64_1555 cos-PI_binary64_1554 cos-PI/2_binary64_1553 cos-PI/3_binary64_1552 cos-PI/4_binary64_1551 cos-PI/6_binary64_1550 sin-+PI/2_binary64_1549 sin-+PI_binary64_1548 sin-PI_binary64_1547 sin-PI/2_binary64_1546 sin-PI/3_binary64_1545 sin-PI/4_binary64_1544 sin-PI/6_binary64_1543 sub-1-sin_binary64_1542 -1-add-sin_binary64_1540 -1-add-cos_binary64_1539 1-sub-sin_binary64_1538 1-sub-cos_binary64_1537 cos-sin-sum_binary64_1536 log-E_binary64_1532 log-rec_binary64_1530 log-div_binary64_1529 pow-base-0_binary64_1526 pow-base-1_binary64_1502 unpow0_binary64_1501 unpow-1_binary64_1499 exp-lft-cube_binary64_1498 exp-lft-sqr_binary64_1497 exp-cbrt_binary64_1496 exp-sqrt_binary64_1495 div-exp_binary64_1493 rec-exp_binary64_1492 e-exp-1_binary64_1487 exp-0_binary64_1484 rem-log-exp_binary64_1483 cube-div_binary64_1471 rem-3cbrt-rft_binary64_1468 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 rem-square-sqrt_binary64_1454 /-rgt-identity_binary64_1433 *-lft-identity_binary64_1431 sub0-neg_binary64_1429 --rgt-identity_binary64_1428 +-rgt-identity_binary64_1427 +-lft-identity_binary64_1426 mul0-rgt_binary64_1425 mul0-lft_binary64_1424 div0_binary64_1423 *-inverses_binary64_1422 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 remove-double-div_binary64_1418 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-lft1-in_binary64_1397 count-2_binary64_1390 associate--r-_binary64_1381 associate--l-_binary64_1380
Counts
80 → 62
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01511702
14161644
212051564
345021536
449441536
549511536

prune172.0ms (1.4%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New58462
Fresh1910
Picked101
Done000
Total601373
Error
0.1b
Counts
73 → 13
Compiler

Compiled 3740 to 1684 computations (55% saved)

localize24.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))))
0.6b
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (/.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1)))))
2.3b
(+.f64 (cos.f64 eps) -1)
2.3b
(+.f64 (cos.f64 eps) -1)

rewrite174.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
10×*-un-lft-identity_binary64_1442
add-log-exp_binary64_1481 add-sqr-sqrt_binary64_1464
add-cube-cbrt_binary64_1477 cbrt-prod_binary64_1473
pow1_binary64_1503 add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478 flip3-+_binary64_1445 flip-+_binary64_1416 cbrt-div_binary64_1474
sum-log_binary64_1533 difference-of-sqr--1_binary64_1413 distribute-lft-out_binary64_1393 +-commutative_binary64_1372 pow1/3_binary64_1524
Counts
4 → 52
Calls

4 calls:

4.0ms
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (/.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1)))))
4.0ms
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))))
4.0ms
(+.f64 (cos.f64 eps) -1)
4.0ms
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 3274 to 1459 computations (55.4% saved)

series2.1s (17.4%)

Error
0.1b
Counts
4 → 32
Calls

4 calls:

1.1s
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (/.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1)))))
871.0ms
(cbrt.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))))
45.0ms
(+.f64 (cos.f64 eps) -1)
43.0ms
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 5092 to 2850 computations (44% saved)

simplify113.0ms (0.9%)

Algorithm
egg-herbie
Rules
362×cancel-sign-sub-inv_binary64_1408
341×distribute-rgt-in_binary64_1392
298×distribute-lft-in_binary64_1391
185×distribute-rgt-neg-in_binary64_1400
165×distribute-lft-neg-in_binary64_1399
163×times-frac_binary64_1448
162×div-sub_binary64_1447
151×associate-/l*_binary64_1387
139×associate-*r*_binary64_1382
135×unswap-sqr_binary64_1410
124×cube-prod_binary64_1470
114×sub-neg_binary64_1435
113×associate-*l*_binary64_1383
102×*-commutative_binary64_1373
86×sqr-pow_binary64_1414 distribute-lft-neg-out_binary64_1401
82×distribute-rgt-neg-out_binary64_1402
74×neg-sub0_binary64_1437
71×neg-mul-1_binary64_1438
67×distribute-neg-in_binary64_1403
59×+-commutative_binary64_1372
41×distribute-neg-frac_binary64_1406 associate-/r/_binary64_1388
39×cube-div_binary64_1471
32×unpow3_binary64_1508
31×distribute-rgt-out_binary64_1395
30×unsub-neg_binary64_1436
29×distribute-rgt-out--_binary64_1396
25×associate-*r/_binary64_1384 associate--r+_binary64_1378
23×log-prod_binary64_1528 cube-mult_binary64_1472
22×associate-+l+_binary64_1375
21×exp-prod_binary64_1494
20×associate--l+_binary64_1379
16×associate-*l/_binary64_1385
14×cube-neg_binary64_1469 associate-+r+_binary64_1374
13×rem-sqrt-square_binary64_1455 distribute-lft-out--_binary64_1394
12×unpow1/3_binary64_1509
11×cube-unmult_binary64_1479 remove-double-neg_binary64_1430 associate-/r*_binary64_1386
10×log-pow_binary64_1531 swap-sqr_binary64_1409 distribute-lft-out_binary64_1393
sqr-neg_binary64_1456
exp-sum_binary64_1488
unpow2_binary64_1507 unpow1/2_binary64_1506 unpow1_binary64_1500
pow-plus_binary64_1505
mul-1-neg_binary64_1434
associate-/l/_binary64_1389
pow-sqr_binary64_1415 distribute-neg-out_binary64_1404 associate-+l-_binary64_1377 associate-+r-_binary64_1376
exp-to-pow_binary64_1504 exp-diff_binary64_1490 rem-exp-log_binary64_1482 rem-3cbrt-lft_binary64_1467 *-rgt-identity_binary64_1432 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 difference-of-squares_binary64_1411
hang-0p-tan_binary64_1563 sub-1-cos_binary64_1541 prod-exp_binary64_1491 exp-neg_binary64_1489 1-exp_binary64_1486 exp-1-e_binary64_1485 *-lft-identity_binary64_1431 div0_binary64_1423 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405
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_1705 erf-erfc_binary64_1704 erf-odd_binary64_1703 if-if-and-not_binary64_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 not-gte_binary64_1694 not-lte_binary64_1693 not-gt_binary64_1692 not-lt_binary64_1691 gte-same_binary64_1690 lte-same_binary64_1689 gt-same_binary64_1688 lt-same_binary64_1687 sinh---cosh_binary64_1634 sinh-+-cosh_binary64_1633 sinh-cosh_binary64_1632 tanh-def-c_binary64_1631 tanh-def-b_binary64_1630 tanh-def-a_binary64_1629 cosh-def_binary64_1628 sinh-def_binary64_1627 tan-neg_binary64_1574 cos-neg_binary64_1573 sin-neg_binary64_1572 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 hang-m-tan_binary64_1568 hang-p-tan_binary64_1567 hang-m0-tan_binary64_1566 hang-p0-tan_binary64_1565 hang-0m-tan_binary64_1564 tan-+PI/2_binary64_1562 tan-+PI_binary64_1561 tan-PI_binary64_1560 tan-PI/3_binary64_1559 tan-PI/4_binary64_1558 tan-PI/6_binary64_1557 cos-+PI/2_binary64_1556 cos-+PI_binary64_1555 cos-PI_binary64_1554 cos-PI/2_binary64_1553 cos-PI/3_binary64_1552 cos-PI/4_binary64_1551 cos-PI/6_binary64_1550 sin-+PI/2_binary64_1549 sin-+PI_binary64_1548 sin-PI_binary64_1547 sin-PI/2_binary64_1546 sin-PI/3_binary64_1545 sin-PI/4_binary64_1544 sin-PI/6_binary64_1543 sub-1-sin_binary64_1542 -1-add-sin_binary64_1540 -1-add-cos_binary64_1539 1-sub-sin_binary64_1538 1-sub-cos_binary64_1537 cos-sin-sum_binary64_1536 log-E_binary64_1532 log-rec_binary64_1530 log-div_binary64_1529 pow-base-0_binary64_1526 pow-base-1_binary64_1502 unpow0_binary64_1501 unpow-1_binary64_1499 exp-lft-cube_binary64_1498 exp-lft-sqr_binary64_1497 exp-cbrt_binary64_1496 exp-sqrt_binary64_1495 div-exp_binary64_1493 rec-exp_binary64_1492 e-exp-1_binary64_1487 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-3cbrt-rft_binary64_1468 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 rem-square-sqrt_binary64_1454 /-rgt-identity_binary64_1433 sub0-neg_binary64_1429 --rgt-identity_binary64_1428 +-rgt-identity_binary64_1427 +-lft-identity_binary64_1426 mul0-rgt_binary64_1425 mul0-lft_binary64_1424 *-inverses_binary64_1422 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 remove-double-div_binary64_1418 distribute-rgt1-in_binary64_1398 distribute-lft1-in_binary64_1397 count-2_binary64_1390 associate--r-_binary64_1381 associate--l-_binary64_1380
Counts
84 → 68
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01992561
15532485
216812354
346792229
452792229

prune192.0ms (1.6%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New64468
Fresh3912
Picked101
Done000
Total681381
Error
0.1b
Counts
81 → 13
Compiler

Compiled 4017 to 1792 computations (55.4% saved)

regimes1.1s (9.3%)

Accuracy

Total 0.3b remaining (85.4%)

Threshold costs 0.3b (85.4%)

Compiler

Compiled 11695 to 6646 computations (43.2% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_1373 +-commutative_binary64_1372
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_1702 if-if-and_binary64_1701 if-if-or-not_binary64_1700 if-if-or_binary64_1699 if-not_binary64_1698 if-same_binary64_1697 if-false_binary64_1696 if-true_binary64_1695 tan-0_binary64_1571 cos-0_binary64_1570 sin-0_binary64_1569 unpow1_binary64_1500 e-exp-1_binary64_1487 1-exp_binary64_1486 exp-1-e_binary64_1485 exp-0_binary64_1484 sqr-abs_binary64_1457 sqr-neg_binary64_1456 neg-mul-1_binary64_1438 neg-sub0_binary64_1437 unsub-neg_binary64_1436 sub-neg_binary64_1435 mul-1-neg_binary64_1434 /-rgt-identity_binary64_1433 *-rgt-identity_binary64_1432 *-lft-identity_binary64_1431 remove-double-neg_binary64_1430 sub0-neg_binary64_1429 --rgt-identity_binary64_1428 +-rgt-identity_binary64_1427 +-lft-identity_binary64_1426 cancel-sign-sub-inv_binary64_1408 cancel-sign-sub_binary64_1407 distribute-neg-frac_binary64_1406 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-neg-in_binary64_1403 distribute-rgt-neg-out_binary64_1402 distribute-lft-neg-out_binary64_1401 distribute-rgt-neg-in_binary64_1400 distribute-lft-neg-in_binary64_1399
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01221
11621
21621

end0.0ms (0%)

sample5.1s (42.2%)

Algorithm
intervals
Results
1.1s3463×body1024valid
642.0ms1184×body2048valid
309.0ms1440×body512valid
82.0ms1309×body128valid
80.0ms601×body256valid
3.0msbody4096valid
Compiler

Compiled 3897 to 2226 computations (42.9% saved)

Profiling

Loading profile data...