Details

Time bar (total: 10.5s)

analyze728.0ms (7%)

Algorithm
search
egg-herbie
Rules
676×sub-neg_binary64_1435
627×times-frac_binary64_1448
614×unsub-neg_binary64_1436
570×div-sub_binary64_1447
462×neg-sub0_binary64_1437
417×neg-mul-1_binary64_1438
396×distribute-neg-in_binary64_1403
267×distribute-rgt-in_binary64_1392
243×distribute-neg-out_binary64_1404
237×associate-/l*_binary64_1387
220×distribute-frac-neg_binary64_1405 +-commutative_binary64_1372
203×distribute-rgt-out--_binary64_1396
202×distribute-lft-in_binary64_1391
199×*-commutative_binary64_1373
188×distribute-rgt-neg-out_binary64_1402
184×distribute-lft-neg-out_binary64_1401
164×associate--r+_binary64_1378
152×distribute-rgt-neg-in_binary64_1400
144×associate-/r*_binary64_1386
135×associate--l+_binary64_1379
126×associate-+r-_binary64_1376
125×associate-+l-_binary64_1377
124×associate--l-_binary64_1380
120×distribute-neg-frac_binary64_1406
113×associate--r-_binary64_1381
104×remove-double-neg_binary64_1430
97×distribute-rgt-out_binary64_1395
96×cancel-sign-sub-inv_binary64_1408
82×distribute-lft-neg-in_binary64_1399
78×associate-*l*_binary64_1383
69×associate-*r*_binary64_1382
64×distribute-rgt1-in_binary64_1398
56×associate-/l/_binary64_1389
52×cancel-sign-sub_binary64_1407
51×associate-/r/_binary64_1388
45×associate-+r+_binary64_1374
40×associate-+l+_binary64_1375
30×mul-1-neg_binary64_1434 distribute-lft-out--_binary64_1394
27×distribute-lft-out_binary64_1393
26×div0_binary64_1423
24×associate-*l/_binary64_1385
22×mul0-rgt_binary64_1425 mul0-lft_binary64_1424 swap-sqr_binary64_1409
21×/-rgt-identity_binary64_1433
20×*-lft-identity_binary64_1431
19×*-rgt-identity_binary64_1432
18×sqr-neg_binary64_1456 distribute-lft1-in_binary64_1397
14×sub0-neg_binary64_1429
12×+-rgt-identity_binary64_1427 associate-*r/_binary64_1384
+-lft-identity_binary64_1426
--rgt-identity_binary64_1428
*-inverses_binary64_1422 +-inverses_binary64_1421 remove-double-div_binary64_1418
1-exp_binary64_1486 difference-of-sqr-1_binary64_1412
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 rem-sqrt-square_binary64_1455 rem-square-sqrt_binary64_1454 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 pow-sqr_binary64_1415 sqr-pow_binary64_1414 difference-of-sqr--1_binary64_1413 difference-of-squares_binary64_1411 unswap-sqr_binary64_1410 count-2_binary64_1390
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
11924
22924
34324
48724
511724
617524
737624
878824
9132124
10268324
11347024
12420424
13484724
14485324
011
111
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
50%50%0%4
50%50%0%5
50%50%0%6
50%50%0%7
50%50%0%8
50%50%0%9
50%50%0%10
50%50%0%11
50%50%0%12
50%50%0%13
50%49.9%0%14
Compiler

Compiled 16 to 9 computations (43.8% saved)

sample29.0ms (0.3%)

Algorithm
intervals
Results
10.0ms64×body1024valid
6.0ms144×body128valid
3.0ms30×body512valid
1.0ms18×body256valid
Compiler

Compiled 31 to 18 computations (41.9% saved)

simplify108.0ms (1%)

Algorithm
egg-herbie
Rules
676×sub-neg_binary64_1435
627×times-frac_binary64_1448
614×unsub-neg_binary64_1436
570×div-sub_binary64_1447
462×neg-sub0_binary64_1437
417×neg-mul-1_binary64_1438
396×distribute-neg-in_binary64_1403
267×distribute-rgt-in_binary64_1392
243×distribute-neg-out_binary64_1404
237×associate-/l*_binary64_1387
220×distribute-frac-neg_binary64_1405 +-commutative_binary64_1372
203×distribute-rgt-out--_binary64_1396
202×distribute-lft-in_binary64_1391
199×*-commutative_binary64_1373
188×distribute-rgt-neg-out_binary64_1402
184×distribute-lft-neg-out_binary64_1401
164×associate--r+_binary64_1378
152×distribute-rgt-neg-in_binary64_1400
144×associate-/r*_binary64_1386
135×associate--l+_binary64_1379
126×associate-+r-_binary64_1376
125×associate-+l-_binary64_1377
124×associate--l-_binary64_1380
120×distribute-neg-frac_binary64_1406
113×associate--r-_binary64_1381
104×remove-double-neg_binary64_1430
97×distribute-rgt-out_binary64_1395
96×cancel-sign-sub-inv_binary64_1408
82×distribute-lft-neg-in_binary64_1399
78×associate-*l*_binary64_1383
69×associate-*r*_binary64_1382
64×distribute-rgt1-in_binary64_1398
56×associate-/l/_binary64_1389
52×cancel-sign-sub_binary64_1407
51×associate-/r/_binary64_1388
45×associate-+r+_binary64_1374
40×associate-+l+_binary64_1375
30×mul-1-neg_binary64_1434 distribute-lft-out--_binary64_1394
27×distribute-lft-out_binary64_1393
26×div0_binary64_1423
24×associate-*l/_binary64_1385
22×mul0-rgt_binary64_1425 mul0-lft_binary64_1424 swap-sqr_binary64_1409
21×/-rgt-identity_binary64_1433
20×*-lft-identity_binary64_1431
19×*-rgt-identity_binary64_1432
18×sqr-neg_binary64_1456 distribute-lft1-in_binary64_1397
14×sub0-neg_binary64_1429
12×+-rgt-identity_binary64_1427 associate-*r/_binary64_1384
+-lft-identity_binary64_1426
--rgt-identity_binary64_1428
*-inverses_binary64_1422 +-inverses_binary64_1421 remove-double-div_binary64_1418
1-exp_binary64_1486 difference-of-sqr-1_binary64_1412
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 rem-sqrt-square_binary64_1455 rem-square-sqrt_binary64_1454 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 pow-sqr_binary64_1415 sqr-pow_binary64_1414 difference-of-sqr--1_binary64_1413 difference-of-squares_binary64_1411 unswap-sqr_binary64_1410 count-2_binary64_1390
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
11924
22924
34324
48724
511724
617524
737624
878824
9132124
10268324
11347024
12420424
13484724
14485324

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 15 to 8 computations (46.7% saved)

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.1b
(-.f64 1 (*.f64 (tan.f64 x) (tan.f64 x)))
0.2b
(/.f64 (-.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))) (+.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))))
0.3b
(*.f64 (tan.f64 x) (tan.f64 x))
0.3b
(*.f64 (tan.f64 x) (tan.f64 x))

rewrite209.0ms (2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
31×add-sqr-sqrt_binary64_1464
27×*-un-lft-identity_binary64_1442
22×add-cube-cbrt_binary64_1477
18×pow1_binary64_1503
15×times-frac_binary64_1448
10×add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478 difference-of-squares_binary64_1411
tan-quot_binary64_1601
add-log-exp_binary64_1481 swap-sqr_binary64_1409 associate-*l*_binary64_1383 associate-*r*_binary64_1382
associate-/l*_binary64_1387
associate-/r*_binary64_1386
pow2_binary64_1523 pow-prod-down_binary64_1513 pow-prod-up_binary64_1512 pow-plus_binary64_1505 prod-exp_binary64_1491 cbrt-unprod_binary64_1475 frac-times_binary64_1452 pow-sqr_binary64_1415 unswap-sqr_binary64_1410 associate-*l/_binary64_1385 associate-*r/_binary64_1384 *-commutative_binary64_1373 flip3--_binary64_1446 associate-/l/_binary64_1389 flip--_binary64_1417 associate-/r/_binary64_1388
div-exp_binary64_1493 cbrt-undiv_binary64_1476 frac-2neg_binary64_1453 div-sub_binary64_1447 clear-num_binary64_1441 div-inv_binary64_1439 flip3-+_binary64_1445 flip-+_binary64_1416 diff-log_binary64_1534 sub-neg_binary64_1435 cancel-sign-sub-inv_binary64_1408
Counts
4 → 110
Calls

4 calls:

7.0ms
(/.f64 (-.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))) (+.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))))
6.0ms
(*.f64 (tan.f64 x) (tan.f64 x))
6.0ms
(*.f64 (tan.f64 x) (tan.f64 x))
3.0ms
(-.f64 1 (*.f64 (tan.f64 x) (tan.f64 x)))
Compiler

Compiled 2625 to 1007 computations (61.6% saved)

series549.0ms (5.2%)

Error
0.3b
Counts
4 → 24
Calls

4 calls:

275.0ms
(/.f64 (-.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))) (+.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))))
88.0ms
(*.f64 (tan.f64 x) (tan.f64 x))
79.0ms
(-.f64 1 (*.f64 (tan.f64 x) (tan.f64 x)))
78.0ms
(*.f64 (tan.f64 x) (tan.f64 x))
Compiler

Compiled 1044 to 767 computations (26.5% saved)

simplify141.0ms (1.4%)

Algorithm
egg-herbie
Rules
548×cancel-sign-sub-inv_binary64_1408
292×associate-*l*_binary64_1383
243×associate-*r*_binary64_1382
212×unswap-sqr_binary64_1410
184×exp-prod_binary64_1494
154×div-sub_binary64_1447 associate-/l*_binary64_1387
153×sub-neg_binary64_1435
144×log-prod_binary64_1528
118×times-frac_binary64_1448 distribute-neg-frac_binary64_1406
113×distribute-rgt-in_binary64_1392
112×associate-/r*_binary64_1386
92×distribute-lft-in_binary64_1391
80×*-commutative_binary64_1373
77×unsub-neg_binary64_1436
75×distribute-rgt-neg-in_binary64_1400
71×sqr-pow_binary64_1414
68×neg-sub0_binary64_1437
65×associate-/r/_binary64_1388 associate-+l+_binary64_1375 +-commutative_binary64_1372
63×neg-mul-1_binary64_1438 distribute-lft-neg-in_binary64_1399
61×associate-/l/_binary64_1389 associate-*l/_binary64_1385
49×cube-prod_binary64_1470
46×log-div_binary64_1529 associate-+r+_binary64_1374
44×swap-sqr_binary64_1409
36×associate-*r/_binary64_1384
33×unpow3_binary64_1508
32×*-lft-identity_binary64_1431
30×*-rgt-identity_binary64_1432
28×pow-plus_binary64_1505
25×associate-+l-_binary64_1377
23×associate--r+_binary64_1378
21×cube-div_binary64_1471
19×distribute-neg-in_binary64_1403
18×/-rgt-identity_binary64_1433
17×associate--l+_binary64_1379
16×exp-sum_binary64_1488 sub0-neg_binary64_1429
15×distribute-rgt-out_binary64_1395
14×cube-unmult_binary64_1479
12×pow-sqr_binary64_1415 distribute-lft-neg-out_binary64_1401
11×difference-of-sqr-1_binary64_1412
10×mul0-rgt_binary64_1425 mul0-lft_binary64_1424 associate-+r-_binary64_1376
log-pow_binary64_1531 log-rec_binary64_1530
exp-diff_binary64_1490 rem-sqrt-square_binary64_1455 +-rgt-identity_binary64_1427 distribute-lft-out_binary64_1393
unpow2_binary64_1507 unpow1/2_binary64_1506 distribute-rgt1-in_binary64_1398
distribute-rgt-neg-out_binary64_1402
cube-mult_binary64_1472
unpow1_binary64_1500 mul-1-neg_binary64_1434 remove-double-neg_binary64_1430 remove-double-div_binary64_1418
difference-of-sqr--1_binary64_1413 count-2_binary64_1390 associate--l-_binary64_1380
div-exp_binary64_1493 exp-neg_binary64_1489 1-exp_binary64_1486 exp-1-e_binary64_1485 cube-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 rem-3cbrt-lft_binary64_1467 sqr-neg_binary64_1456 rem-square-sqrt_binary64_1454 cancel-sign-sub_binary64_1407 distribute-lft1-in_binary64_1397 distribute-rgt-out--_binary64_1396 distribute-lft-out--_binary64_1394 associate--r-_binary64_1381
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 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 prod-exp_binary64_1491 e-exp-1_binary64_1487 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 --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 difference-of-squares_binary64_1411 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404
Counts
134 → 109
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01502714
13382463
28932441
328562427
447922173
549362173

prune179.0ms (1.7%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New9712109
Fresh000
Picked101
Done000
Total9812110
Error
0.0b
Counts
110 → 12
Compiler

Compiled 2480 to 1490 computations (39.9% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(+.f64 1 (tan.f64 x))
0.2b
(/.f64 (+.f64 1 (pow.f64 (tan.f64 x) 2)) (-.f64 1 (tan.f64 x)))
0.2b
(/.f64 (+.f64 1 (tan.f64 x)) (/.f64 (+.f64 1 (pow.f64 (tan.f64 x) 2)) (-.f64 1 (tan.f64 x))))
0.3b
(pow.f64 (tan.f64 x) 2)

rewrite583.0ms (5.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
317×*-un-lft-identity_binary64_1442
264×times-frac_binary64_1448
179×add-sqr-sqrt_binary64_1464
104×add-cube-cbrt_binary64_1477
69×distribute-lft-out_binary64_1393
50×difference-of-squares_binary64_1411
36×associate-/r*_binary64_1386
25×distribute-lft-out--_binary64_1394
13×associate-/r/_binary64_1388
12×add-exp-log_binary64_1480
11×add-cbrt-cube_binary64_1478
associate-/l*_binary64_1387
div-inv_binary64_1439
add-log-exp_binary64_1481 flip3--_binary64_1446 flip--_binary64_1417
pow1_binary64_1503
div-exp_binary64_1493 cbrt-undiv_binary64_1476 associate-/l/_binary64_1389
unpow-prod-down_binary64_1521 pow-unpow_binary64_1519 flip3-+_binary64_1445 flip-+_binary64_1416
frac-2neg_binary64_1453 clear-num_binary64_1441
pow-pow_binary64_1514 pow-to-exp_binary64_1511 pow-exp_binary64_1510 unpow2_binary64_1507 sqr-pow_binary64_1414 sum-log_binary64_1533 +-commutative_binary64_1372
Counts
4 → 251
Calls

4 calls:

20.0ms
(/.f64 (+.f64 1 (tan.f64 x)) (/.f64 (+.f64 1 (pow.f64 (tan.f64 x) 2)) (-.f64 1 (tan.f64 x))))
13.0ms
(/.f64 (+.f64 1 (pow.f64 (tan.f64 x) 2)) (-.f64 1 (tan.f64 x)))
3.0ms
(+.f64 1 (tan.f64 x))
3.0ms
(pow.f64 (tan.f64 x) 2)
Compiler

Compiled 7790 to 5246 computations (32.7% saved)

series677.0ms (6.5%)

Error
0.0b
Counts
4 → 24
Calls

4 calls:

328.0ms
(/.f64 (+.f64 1 (tan.f64 x)) (/.f64 (+.f64 1 (pow.f64 (tan.f64 x) 2)) (-.f64 1 (tan.f64 x))))
182.0ms
(/.f64 (+.f64 1 (pow.f64 (tan.f64 x) 2)) (-.f64 1 (tan.f64 x)))
91.0ms
(pow.f64 (tan.f64 x) 2)
47.0ms
(+.f64 1 (tan.f64 x))
Compiler

Compiled 1066 to 783 computations (26.5% saved)

simplify301.0ms (2.9%)

Algorithm
egg-herbie
Rules
721×times-frac_binary64_1448
444×associate-/r/_binary64_1388
390×distribute-rgt-in_binary64_1392
380×associate-/l/_binary64_1389
336×distribute-lft-in_binary64_1391
129×associate-*l/_binary64_1385
125×neg-mul-1_binary64_1438
124×*-commutative_binary64_1373
86×cancel-sign-sub-inv_binary64_1408
72×associate-/l*_binary64_1387
68×log-prod_binary64_1528
63×div-sub_binary64_1447
61×unswap-sqr_binary64_1410 associate-*r*_binary64_1382
59×cube-prod_binary64_1470
58×associate-*r/_binary64_1384
57×exp-prod_binary64_1494 associate-*l*_binary64_1383 +-commutative_binary64_1372
55×sqr-pow_binary64_1414
51×sub-neg_binary64_1435
50×*-rgt-identity_binary64_1432
44×distribute-lft-neg-out_binary64_1401
43×distribute-rgt-neg-in_binary64_1400
40×distribute-rgt-neg-out_binary64_1402
38×distribute-lft-neg-in_binary64_1399
36×*-lft-identity_binary64_1431
32×associate-/r*_binary64_1386
29×associate-+r+_binary64_1374
25×associate-+l+_binary64_1375
24×neg-sub0_binary64_1437
19×distribute-rgt-out_binary64_1395
17×rem-sqrt-square_binary64_1455
15×cube-unmult_binary64_1479
13×distribute-neg-frac_binary64_1406
12×pow-plus_binary64_1505
11×log-pow_binary64_1531 distribute-neg-in_binary64_1403
10×log-div_binary64_1529 unpow3_binary64_1508 exp-sum_binary64_1488
unpow1/2_binary64_1506 pow-sqr_binary64_1415 distribute-rgt-out--_binary64_1396
/-rgt-identity_binary64_1433 associate--r+_binary64_1378
unpow2_binary64_1507 unpow1_binary64_1500 unsub-neg_binary64_1436 swap-sqr_binary64_1409 distribute-lft-out_binary64_1393 associate--l+_binary64_1379
distribute-rgt1-in_binary64_1398
cube-div_binary64_1471
cube-mult_binary64_1472 remove-double-div_binary64_1418 difference-of-sqr-1_binary64_1412 difference-of-squares_binary64_1411
exp-diff_binary64_1490 exp-neg_binary64_1489 remove-double-neg_binary64_1430 *-inverses_binary64_1422 associate--r-_binary64_1381 associate-+l-_binary64_1377 associate-+r-_binary64_1376
prod-exp_binary64_1491 1-exp_binary64_1486 exp-1-e_binary64_1485 cube-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 sqr-neg_binary64_1456 rem-square-sqrt_binary64_1454 div0_binary64_1423 distribute-lft1-in_binary64_1397 distribute-lft-out--_binary64_1394
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-rec_binary64_1530 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 div-exp_binary64_1493 rec-exp_binary64_1492 e-exp-1_binary64_1487 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 rem-3cbrt-lft_binary64_1467 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 mul-1-neg_binary64_1434 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_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 difference-of-sqr--1_binary64_1413 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 count-2_binary64_1390 associate--l-_binary64_1380
Counts
275 → 200
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03099908
17209562
222199496
346309496
449939496

prune379.0ms (3.6%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New1973200
Fresh01111
Picked101
Done000
Total19814212
Error
0.0b
Counts
212 → 14
Compiler

Compiled 5764 to 3793 computations (34.2% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 (-.f64 1 (/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))) (+.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))))
0.2b
(*.f64 (sin.f64 x) (tan.f64 x))
0.2b
(/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))
0.3b
(*.f64 (tan.f64 x) (tan.f64 x))

rewrite177.0ms (1.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
39×add-sqr-sqrt_binary64_1464
35×*-un-lft-identity_binary64_1442
23×add-cube-cbrt_binary64_1477
21×times-frac_binary64_1448
15×add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
13×pow1_binary64_1503
difference-of-squares_binary64_1411
associate-/l*_binary64_1387
tan-quot_binary64_1601 associate-*l*_binary64_1383 associate-*r*_binary64_1382 associate-/r*_binary64_1386
add-log-exp_binary64_1481 distribute-lft-out--_binary64_1394
prod-exp_binary64_1491 cbrt-unprod_binary64_1475 swap-sqr_binary64_1409 associate-*r/_binary64_1384 div-exp_binary64_1493 cbrt-undiv_binary64_1476 associate-/l/_binary64_1389
pow-prod-down_binary64_1513 unswap-sqr_binary64_1410 *-commutative_binary64_1373 frac-2neg_binary64_1453 clear-num_binary64_1441 div-inv_binary64_1439 associate-/r/_binary64_1388
pow2_binary64_1523 pow-prod-up_binary64_1512 pow-plus_binary64_1505 frac-times_binary64_1452 pow-sqr_binary64_1415 associate-*l/_binary64_1385 div-sub_binary64_1447 flip3--_binary64_1446 flip--_binary64_1417 flip3-+_binary64_1445 flip-+_binary64_1416
Counts
4 → 113
Calls

4 calls:

12.0ms
(/.f64 (-.f64 1 (/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))) (+.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))))
6.0ms
(/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))
6.0ms
(*.f64 (tan.f64 x) (tan.f64 x))
5.0ms
(*.f64 (sin.f64 x) (tan.f64 x))
Compiler

Compiled 3201 to 1076 computations (66.4% saved)

series655.0ms (6.3%)

Error
0.0b
Counts
4 → 24
Calls

4 calls:

331.0ms
(/.f64 (-.f64 1 (/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))) (+.f64 1 (*.f64 (tan.f64 x) (tan.f64 x))))
124.0ms
(/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))
90.0ms
(*.f64 (sin.f64 x) (tan.f64 x))
80.0ms
(*.f64 (tan.f64 x) (tan.f64 x))
Compiler

Compiled 1160 to 827 computations (28.7% saved)

simplify357.0ms (3.4%)

Algorithm
egg-herbie
Rules
343×associate-/r*_binary64_1386
326×associate-*l/_binary64_1385
323×associate-/l/_binary64_1389
251×associate-/r/_binary64_1388
250×associate-*r/_binary64_1384
214×*-commutative_binary64_1373
182×div-sub_binary64_1447
141×sub-neg_binary64_1435
133×log-prod_binary64_1528
129×distribute-rgt-in_binary64_1392
120×log-div_binary64_1529
112×cube-div_binary64_1471
109×distribute-lft-in_binary64_1391
105×exp-prod_binary64_1494
104×associate-/l*_binary64_1387
100×sqr-pow_binary64_1414
97×associate-*l*_binary64_1383
91×associate-+l+_binary64_1375
89×associate-*r*_binary64_1382
79×+-commutative_binary64_1372
77×*-rgt-identity_binary64_1432
73×cube-prod_binary64_1470
72×associate-+r+_binary64_1374
69×neg-mul-1_binary64_1438 neg-sub0_binary64_1437
68×cancel-sign-sub-inv_binary64_1408
55×times-frac_binary64_1448 *-lft-identity_binary64_1431 distribute-rgt-neg-in_binary64_1400
53×distribute-neg-frac_binary64_1406
51×unswap-sqr_binary64_1410
48×unpow3_binary64_1508
44×unsub-neg_binary64_1436 distribute-lft-neg-in_binary64_1399
43×cube-mult_binary64_1472
24×/-rgt-identity_binary64_1433 associate-+l-_binary64_1377
23×associate--l+_binary64_1379
21×log-rec_binary64_1530
18×pow-sqr_binary64_1415
17×pow-plus_binary64_1505
15×exp-diff_binary64_1490
14×log-pow_binary64_1531
13×swap-sqr_binary64_1409
11×cube-unmult_binary64_1479 associate-+r-_binary64_1376
sub0-neg_binary64_1429 distribute-lft-neg-out_binary64_1401 distribute-rgt-out_binary64_1395 associate--l-_binary64_1380 associate--r+_binary64_1378
unpow1/2_binary64_1506
exp-sum_binary64_1488 rem-sqrt-square_binary64_1455 +-rgt-identity_binary64_1427 distribute-lft-out_binary64_1393
unpow2_binary64_1507 distribute-neg-in_binary64_1403
distribute-rgt1-in_binary64_1398
remove-double-neg_binary64_1430 distribute-rgt-neg-out_binary64_1402
unpow1_binary64_1500 div0_binary64_1423 remove-double-div_binary64_1418
count-2_binary64_1390
1-exp_binary64_1486 exp-1-e_binary64_1485 cube-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 rem-3cbrt-lft_binary64_1467 sqr-neg_binary64_1456 rem-square-sqrt_binary64_1454 +-inverses_binary64_1421 distribute-rgt-out--_binary64_1396 distribute-lft-out--_binary64_1394 associate--r-_binary64_1381
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 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 div-exp_binary64_1493 rec-exp_binary64_1492 prod-exp_binary64_1491 exp-neg_binary64_1489 e-exp-1_binary64_1487 exp-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 mul-1-neg_binary64_1434 --rgt-identity_binary64_1428 +-lft-identity_binary64_1426 mul0-rgt_binary64_1425 mul0-lft_binary64_1424 *-inverses_binary64_1422 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 difference-of-squares_binary64_1411 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-lft1-in_binary64_1397
Counts
137 → 99
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02003417
14653126
214233115
339293108
447112962
549492962

prune159.0ms (1.5%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New96399
Fresh11213
Picked101
Done000
Total9815113
Error
0.0b
Counts
113 → 15
Compiler

Compiled 2880 to 1391 computations (51.7% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (sin.f64 x) (tan.f64 x))
0.2b
(/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))
0.2b
(pow.f64 (sin.f64 x) 2)
0.2b
(pow.f64 (cos.f64 x) 2)

rewrite135.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
14×add-sqr-sqrt_binary64_1464
13×add-exp-log_binary64_1480
12×add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
11×add-cbrt-cube_binary64_1478
pow1_binary64_1503
unpow-prod-down_binary64_1521 pow-unpow_binary64_1519
add-log-exp_binary64_1481
times-frac_binary64_1448 associate-/r*_binary64_1386 associate-*l*_binary64_1383 associate-*r*_binary64_1382
pow-pow_binary64_1514 pow-to-exp_binary64_1511 pow-exp_binary64_1510 unpow2_binary64_1507 sqr-pow_binary64_1414 prod-exp_binary64_1491 div-exp_binary64_1493 cbrt-undiv_binary64_1476 cbrt-unprod_binary64_1475 tan-quot_binary64_1601 associate-*r/_binary64_1384
frac-2neg_binary64_1453 clear-num_binary64_1441 div-inv_binary64_1439 associate-/l/_binary64_1389 associate-/l*_binary64_1387 pow-prod-down_binary64_1513 unswap-sqr_binary64_1410 *-commutative_binary64_1373
Counts
4 → 77
Calls

4 calls:

6.0ms
(/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))
6.0ms
(*.f64 (sin.f64 x) (tan.f64 x))
3.0ms
(pow.f64 (sin.f64 x) 2)
3.0ms
(pow.f64 (cos.f64 x) 2)
Compiler

Compiled 2126 to 1027 computations (51.7% saved)

series327.0ms (3.1%)

Error
0.0b
Counts
4 → 24
Calls

4 calls:

127.0ms
(/.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (cos.f64 x))
84.0ms
(*.f64 (sin.f64 x) (tan.f64 x))
44.0ms
(pow.f64 (sin.f64 x) 2)
40.0ms
(pow.f64 (cos.f64 x) 2)
Compiler

Compiled 1438 to 1024 computations (28.8% saved)

simplify83.0ms (0.8%)

Algorithm
egg-herbie
Rules
523×associate-*l*_binary64_1383
401×associate-*r*_binary64_1382
302×associate-*l/_binary64_1385
295×associate-/r*_binary64_1386
284×associate-/l/_binary64_1389
209×associate-*r/_binary64_1384
178×associate-/r/_binary64_1388
176×log-prod_binary64_1528
156×cube-prod_binary64_1470
134×exp-prod_binary64_1494
125×*-commutative_binary64_1373
121×log-div_binary64_1529
117×cube-div_binary64_1471
75×associate-/l*_binary64_1387
67×cancel-sign-sub-inv_binary64_1408
66×unswap-sqr_binary64_1410
64×+-commutative_binary64_1372
63×associate-+l+_binary64_1375
61×sqr-pow_binary64_1414
54×times-frac_binary64_1448
49×associate-+r+_binary64_1374
38×sub-neg_binary64_1435
35×associate--l+_binary64_1379
33×distribute-rgt-neg-in_binary64_1400
31×distribute-lft-neg-in_binary64_1399
29×pow-plus_binary64_1505
26×cube-unmult_binary64_1479 associate-+l-_binary64_1377
22×log-pow_binary64_1531
18×unpow3_binary64_1508 associate-+r-_binary64_1376
17×neg-mul-1_binary64_1438 neg-sub0_binary64_1437 pow-sqr_binary64_1415
16×associate--r+_binary64_1378
15×cube-mult_binary64_1472
14×*-rgt-identity_binary64_1432
13×log-rec_binary64_1530 distribute-rgt-in_binary64_1392
11×swap-sqr_binary64_1409
10×unpow1/2_binary64_1506 /-rgt-identity_binary64_1433
unpow2_binary64_1507 unpow1_binary64_1500 *-lft-identity_binary64_1431
unsub-neg_binary64_1436 distribute-neg-frac_binary64_1406 associate--l-_binary64_1380
distribute-lft-out_binary64_1393
distribute-neg-in_binary64_1403 distribute-rgt-out_binary64_1395 distribute-lft-in_binary64_1391
rem-sqrt-square_binary64_1455
distribute-rgt1-in_binary64_1398
rem-3cbrt-rft_binary64_1468 rem-square-sqrt_binary64_1454 distribute-lft-neg-out_binary64_1401
1-exp_binary64_1486 exp-1-e_binary64_1485 div-sub_binary64_1447 distribute-rgt-neg-out_binary64_1402 distribute-lft-out--_binary64_1394
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 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 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-0_binary64_1484 rem-log-exp_binary64_1483 rem-exp-log_binary64_1482 cube-neg_binary64_1469 rem-3cbrt-lft_binary64_1467 rem-cbrt-cube_binary64_1466 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 sqr-neg_binary64_1456 mul-1-neg_binary64_1434 remove-double-neg_binary64_1430 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 difference-of-sqr--1_binary64_1413 difference-of-sqr-1_binary64_1412 difference-of-squares_binary64_1411 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-lft1-in_binary64_1397 distribute-rgt-out--_binary64_1396 count-2_binary64_1390 associate--r-_binary64_1381
Counts
101 → 53
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01471334
13261135
210451129
342311129
450991129

prune67.0ms (0.6%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New52153
Fresh11314
Picked011
Done000
Total531568
Error
0.0b
Counts
68 → 15
Compiler

Compiled 1349 to 699 computations (48.2% saved)

regimes1.2s (11.1%)

Accuracy

Total 0.3b remaining (90.8%)

Threshold costs 0.3b (90.8%)

Compiler

Compiled 13254 to 8563 computations (35.4% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_1372
sub-neg_binary64_1435
neg-mul-1_binary64_1438 neg-sub0_binary64_1437 *-commutative_binary64_1373
1-exp_binary64_1486 cancel-sign-sub-inv_binary64_1408 distribute-lft-neg-out_binary64_1401 distribute-rgt-neg-in_binary64_1400
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 exp-1-e_binary64_1485 exp-0_binary64_1484 sqr-abs_binary64_1457 sqr-neg_binary64_1456 unsub-neg_binary64_1436 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_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-in_binary64_1399
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01022
11822
22422
32822
43022
52922

end0.0ms (0%)

sample3.4s (32.6%)

Algorithm
intervals
Results
327.0ms2019×body1024valid
184.0ms4574×body128valid
115.0ms932×body512valid
38.0ms471×body256valid
1.0msbody2048valid
Compiler

Compiled 3095 to 2033 computations (34.3% saved)

Profiling

Loading profile data...