Details

Time bar (total: 11.4s)

analyze146.0ms (1.3%)

Algorithm
search
egg-herbie
Rules
sub-neg_binary64_1435
+-commutative_binary64_1372
sub0-neg_binary64_1429 associate--r+_binary64_1378 associate-+l-_binary64_1377 *-commutative_binary64_1373
neg-mul-1_binary64_1438 --rgt-identity_binary64_1428 distribute-rgt-in_binary64_1392 distribute-lft-in_binary64_1391
1-exp_binary64_1486 neg-sub0_binary64_1437 associate-*l/_binary64_1385 associate-*r/_binary64_1384 associate--l+_binary64_1379 associate-+l+_binary64_1375 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 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 +-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 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-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 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_1383 associate-*r*_binary64_1382 associate--r-_binary64_1381 associate--l-_binary64_1380 associate-+r-_binary64_1376
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01018
12215
22715
33215
43815
54615
65315
76115
86415
94515
011
111
Search
TrueOtherFalseIter
0%100%0%0
100%0%0%1
Compiler

Compiled 13 to 13 computations (0% saved)

sample45.0ms (0.4%)

Algorithm
intervals
Results
16.0ms62×body2048valid
7.0ms37×body1024valid
6.0ms131×body128valid
2.0ms14×body512valid
1.0ms12×body256valid
Compiler

Compiled 25 to 26 computations (-4% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
sub-neg_binary64_1435
+-commutative_binary64_1372
sub0-neg_binary64_1429 associate--r+_binary64_1378 associate-+l-_binary64_1377 *-commutative_binary64_1373
neg-mul-1_binary64_1438 --rgt-identity_binary64_1428 distribute-rgt-in_binary64_1392 distribute-lft-in_binary64_1391
1-exp_binary64_1486 neg-sub0_binary64_1437 associate-*l/_binary64_1385 associate-*r/_binary64_1384 associate--l+_binary64_1379 associate-+l+_binary64_1375 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 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 +-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 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-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 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_1383 associate-*r*_binary64_1382 associate--r-_binary64_1381 associate--l-_binary64_1380 associate-+r-_binary64_1376
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01018
12215
22715
33215
43815
54615
65315
76115
86415
94515

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
17.1b
Counts
2 → 1
Compiler

Compiled 20 to 20 computations (0% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
0.0b
(hypot.f64 1 x)
0.0b
(/.f64 1/2 (hypot.f64 1 x))
2.6b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

rewrite134.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
17.1b
Rules
26×*-un-lft-identity_binary64_1442
24×add-sqr-sqrt_binary64_1464
15×add-cube-cbrt_binary64_1477
12×sqrt-prod_binary64_1458
times-frac_binary64_1448
cancel-sign-sub-inv_binary64_1408
add-log-exp_binary64_1481 add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
pow1_binary64_1503
difference-of-squares_binary64_1411
distribute-lft-out_binary64_1393 distribute-lft-out--_binary64_1394 associate-/l*_binary64_1387 associate-/r*_binary64_1386
sqrt-div_binary64_1459
diff-log_binary64_1534 flip3--_binary64_1446 sub-neg_binary64_1435 flip--_binary64_1417 div-exp_binary64_1493 cbrt-undiv_binary64_1476 frac-2neg_binary64_1453 clear-num_binary64_1441 div-inv_binary64_1439 pow1/2_binary64_1522 sqrt-pow1_binary64_1460 flip3-+_binary64_1445 flip-+_binary64_1416 rem-sqrt-square_binary64_1455
Counts
4 → 75
Calls

4 calls:

11.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
7.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
3.0ms
(/.f64 1/2 (hypot.f64 1 x))
1.0ms
(hypot.f64 1 x)
Compiler

Compiled 1401 to 1270 computations (9.4% saved)

series242.0ms (2.1%)

Error
17.1b
Counts
4 → 12
Calls

4 calls:

95.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
87.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
40.0ms
(/.f64 1/2 (hypot.f64 1 x))
11.0ms
(hypot.f64 1 x)
Compiler

Compiled 396 to 385 computations (2.8% saved)

simplify133.0ms (1.2%)

Algorithm
egg-herbie
Rules
950×unsub-neg_binary64_1436
585×times-frac_binary64_1448
366×neg-mul-1_binary64_1438
355×neg-sub0_binary64_1437
253×cancel-sign-sub-inv_binary64_1408
226×distribute-neg-out_binary64_1404
214×distribute-rgt-in_binary64_1392
189×*-commutative_binary64_1373
182×distribute-lft-in_binary64_1391
179×distribute-rgt-neg-out_binary64_1402
176×distribute-lft-neg-out_binary64_1401
134×associate-/l*_binary64_1387
133×distribute-rgt-neg-in_binary64_1400
129×associate-*l*_binary64_1383
111×div-sub_binary64_1447 associate-*r*_binary64_1382
106×distribute-lft-neg-in_binary64_1399
103×sub-neg_binary64_1435
93×associate-/r*_binary64_1386
87×exp-prod_binary64_1494
82×sqr-pow_binary64_1414
68×log-prod_binary64_1528
66×associate-+l+_binary64_1375
58×associate-/l/_binary64_1389
53×associate-*l/_binary64_1385
52×distribute-neg-in_binary64_1403
51×+-commutative_binary64_1372
50×distribute-rgt-out--_binary64_1396
46×unswap-sqr_binary64_1410
43×associate-+r+_binary64_1374
38×associate-/r/_binary64_1388 associate-*r/_binary64_1384
36×cube-prod_binary64_1470
32×*-lft-identity_binary64_1431 distribute-rgt-out_binary64_1395
31×rem-sqrt-square_binary64_1455
30×*-rgt-identity_binary64_1432 associate-+l-_binary64_1377
29×exp-sum_binary64_1488
28×distribute-neg-frac_binary64_1406
27×mul0-rgt_binary64_1425 mul0-lft_binary64_1424 distribute-rgt1-in_binary64_1398
24×cancel-sign-sub_binary64_1407
21×unpow3_binary64_1508 sub0-neg_binary64_1429
18×exp-diff_binary64_1490 pow-sqr_binary64_1415
17×pow-plus_binary64_1505
16×cube-unmult_binary64_1479 swap-sqr_binary64_1409
14×log-div_binary64_1529 distribute-lft-out_binary64_1393 associate--r+_binary64_1378
13×/-rgt-identity_binary64_1433 difference-of-squares_binary64_1411
12×cube-mult_binary64_1472
11×associate-+r-_binary64_1376
cube-div_binary64_1471
sqr-neg_binary64_1456 distribute-lft1-in_binary64_1397
+-rgt-identity_binary64_1427 difference-of-sqr-1_binary64_1412
log-pow_binary64_1531 unpow1/2_binary64_1506 mul-1-neg_binary64_1434 --rgt-identity_binary64_1428 distribute-frac-neg_binary64_1405 associate--l+_binary64_1379
difference-of-sqr--1_binary64_1413
exp-neg_binary64_1489 cube-neg_binary64_1469
log-rec_binary64_1530 rem-square-sqrt_binary64_1454 div0_binary64_1423 count-2_binary64_1390
unpow2_binary64_1507 div-exp_binary64_1493 1-exp_binary64_1486 exp-1-e_binary64_1485 rem-3cbrt-lft_binary64_1467 rem-cbrt-cube_binary64_1466 remove-double-neg_binary64_1430 +-lft-identity_binary64_1426 remove-double-div_binary64_1418 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 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 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-3cbrt-rft_binary64_1468 rem-cube-cbrt_binary64_1465 sqr-abs_binary64_1457 *-inverses_binary64_1422 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 associate--r-_binary64_1381 associate--l-_binary64_1380
Counts
87 → 38
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01191374
12111328
24381325
311561325
422751307
536601307
649231307
748211307

prune51.0ms (0.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New35338
Fresh000
Picked011
Done000
Total35439
Error
16.6b
Counts
39 → 4
Compiler

Compiled 606 to 554 computations (8.6% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 1/2 (hypot.f64 1 x))
0.0b
(/.f64 1/2 (hypot.f64 1 x))
0.0b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
2.1b
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))

rewrite399.0ms (3.5%)

Algorithm
rewrite-expression-head
Error
16.3b
Rules
95×add-sqr-sqrt_binary64_1464
92×*-un-lft-identity_binary64_1442
71×times-frac_binary64_1448
41×add-cube-cbrt_binary64_1477
28×distribute-lft-out_binary64_1393
16×difference-of-squares_binary64_1411
14×sqrt-prod_binary64_1458
13×cancel-sign-sub-inv_binary64_1408
12×associate-/l*_binary64_1387 associate-/r*_binary64_1386
10×add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
distribute-lft-out--_binary64_1394
add-log-exp_binary64_1481
pow1_binary64_1503 div-inv_binary64_1439
div-exp_binary64_1493 cbrt-undiv_binary64_1476 frac-2neg_binary64_1453 clear-num_binary64_1441
flip3--_binary64_1446 flip--_binary64_1417 associate-/l/_binary64_1389 associate-/r/_binary64_1388
diff-log_binary64_1534 sub-neg_binary64_1435 div-sub_binary64_1447 flip3-+_binary64_1445 flip-+_binary64_1416
Counts
4 → 146
Calls

4 calls:

20.0ms
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
8.0ms
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
3.0ms
(/.f64 1/2 (hypot.f64 1 x))
3.0ms
(/.f64 1/2 (hypot.f64 1 x))
Compiler

Compiled 4316 to 3882 computations (10.1% saved)

series399.0ms (3.5%)

Error
16.6b
Counts
4 → 12
Calls

4 calls:

219.0ms
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
69.0ms
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
49.0ms
(/.f64 1/2 (hypot.f64 1 x))
48.0ms
(/.f64 1/2 (hypot.f64 1 x))
Compiler

Compiled 702 to 655 computations (6.7% saved)

simplify180.0ms (1.6%)

Algorithm
egg-herbie
Rules
466×div-sub_binary64_1447
293×associate-*l*_binary64_1383
262×associate-/l*_binary64_1387
257×associate-*r*_binary64_1382
237×associate-*l/_binary64_1385
201×exp-prod_binary64_1494
182×associate-*r/_binary64_1384
172×distribute-rgt-in_binary64_1392
170×log-prod_binary64_1528
158×distribute-lft-in_binary64_1391
155×log-div_binary64_1529 sub-neg_binary64_1435
141×associate-/l/_binary64_1389
133×*-commutative_binary64_1373
115×associate-/r*_binary64_1386
102×times-frac_binary64_1448
96×distribute-neg-frac_binary64_1406
88×neg-sub0_binary64_1437
86×exp-diff_binary64_1490
81×neg-mul-1_binary64_1438
75×unsub-neg_binary64_1436
68×associate-/r/_binary64_1388
62×distribute-rgt-neg-in_binary64_1400
58×cancel-sign-sub-inv_binary64_1408
54×cube-prod_binary64_1470
47×+-commutative_binary64_1372
44×distribute-lft-neg-in_binary64_1399 associate-+l+_binary64_1375
43×associate-+r+_binary64_1374
42×sqr-pow_binary64_1414
41×*-rgt-identity_binary64_1432
40×unswap-sqr_binary64_1410
39×unpow3_binary64_1508
38×*-lft-identity_binary64_1431
31×exp-sum_binary64_1488 distribute-lft-neg-out_binary64_1401
24×cube-div_binary64_1471
23×distribute-rgt-neg-out_binary64_1402
22×/-rgt-identity_binary64_1433
18×mul0-rgt_binary64_1425 mul0-lft_binary64_1424
13×log-rec_binary64_1530 distribute-frac-neg_binary64_1405
11×cube-unmult_binary64_1479 div0_binary64_1423 associate-+l-_binary64_1377
sub0-neg_binary64_1429 distribute-neg-in_binary64_1403 distribute-rgt-out_binary64_1395
pow-plus_binary64_1505 associate--r+_binary64_1378
unpow1/2_binary64_1506 remove-double-neg_binary64_1430 distribute-rgt1-in_binary64_1398
associate-+r-_binary64_1376
rem-square-sqrt_binary64_1454 remove-double-div_binary64_1418 swap-sqr_binary64_1409 distribute-lft-out_binary64_1393
cube-mult_binary64_1472 rem-sqrt-square_binary64_1455 mul-1-neg_binary64_1434 +-rgt-identity_binary64_1427 pow-sqr_binary64_1415 associate--r-_binary64_1381
log-pow_binary64_1531 exp-sqrt_binary64_1495 rem-3cbrt-lft_binary64_1467
div-exp_binary64_1493 1-exp_binary64_1486 exp-1-e_binary64_1485 cube-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 sqr-neg_binary64_1456 *-inverses_binary64_1422 difference-of-sqr-1_binary64_1412 distribute-lft1-in_binary64_1397 associate--l-_binary64_1380
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 unpow2_binary64_1507 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 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 --rgt-identity_binary64_1428 +-lft-identity_binary64_1426 +-inverses_binary64_1421 lft-mult-inverse_binary64_1420 rgt-mult-inverse_binary64_1419 difference-of-sqr--1_binary64_1413 difference-of-squares_binary64_1411 cancel-sign-sub_binary64_1407 distribute-neg-out_binary64_1404 distribute-rgt-out--_binary64_1396 distribute-lft-out--_binary64_1394 count-2_binary64_1390 associate--l+_binary64_1379
Counts
158 → 76
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01763990
14263855
211253849
334333848
443613848
548853848

prune133.0ms (1.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New73376
Fresh202
Picked101
Done011
Total76480
Error
16.3b
Counts
80 → 4
Compiler

Compiled 1839 to 1653 computations (10.1% saved)

localize24.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 1/4 (hypot.f64 1 x))
0.0b
(/.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) (hypot.f64 1 x))
0.2b
(pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3)
2.0b
(-.f64 (pow.f64 1/2 3) (pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3))

rewrite898.0ms (7.8%)

Algorithm
rewrite-expression-head
Error
16.3b
Rules
97×add-sqr-sqrt_binary64_1464
69×*-un-lft-identity_binary64_1442
65×times-frac_binary64_1448
51×add-cube-cbrt_binary64_1477
44×unpow-prod-down_binary64_1521 cube-prod_binary64_1470
32×cancel-sign-sub-inv_binary64_1408
24×difference-of-squares_binary64_1411
12×sqr-pow_binary64_1414
11×add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
associate-/l*_binary64_1387
add-log-exp_binary64_1481 div-inv_binary64_1439 associate-/r*_binary64_1386
pow1_binary64_1503 distribute-lft-out--_binary64_1394
distribute-lft-out_binary64_1393
pow-unpow_binary64_1519 div-exp_binary64_1493 cbrt-undiv_binary64_1476
unpow3_binary64_1508 cube-mult_binary64_1472 pow-exp_binary64_1510 rem-cube-cbrt_binary64_1465 frac-2neg_binary64_1453 clear-num_binary64_1441 associate-/l/_binary64_1389
diff-log_binary64_1534 flip3--_binary64_1446 difference-cubes_binary64_1444 sub-neg_binary64_1435 flip--_binary64_1417 pow-pow_binary64_1514 pow-to-exp_binary64_1511 cube-div_binary64_1471 flip3-+_binary64_1445 flip-+_binary64_1416
Counts
4 → 179
Calls

4 calls:

28.0ms
(-.f64 (pow.f64 1/2 3) (pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3))
9.0ms
(/.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) (hypot.f64 1 x))
5.0ms
(pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3)
3.0ms
(/.f64 1/4 (hypot.f64 1 x))
Compiler

Compiled 8438 to 7551 computations (10.5% saved)

series455.0ms (4%)

Error
16.3b
Counts
4 → 12
Calls

4 calls:

154.0ms
(-.f64 (pow.f64 1/2 3) (pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3))
110.0ms
(pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3)
108.0ms
(/.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) (hypot.f64 1 x))
54.0ms
(/.f64 1/4 (hypot.f64 1 x))
Compiler

Compiled 1314 to 1195 computations (9.1% saved)

simplify166.0ms (1.4%)

Algorithm
egg-herbie
Rules
754×times-frac_binary64_1448
491×log-prod_binary64_1528
411×unswap-sqr_binary64_1410
187×associate-*r*_binary64_1382
165×associate-*l*_binary64_1383
157×exp-prod_binary64_1494
113×sqr-pow_binary64_1414
110×log-div_binary64_1529
99×cube-prod_binary64_1470
95×associate-*l/_binary64_1385
89×associate-*r/_binary64_1384
83×cube-div_binary64_1471
76×cancel-sign-sub-inv_binary64_1408
74×neg-mul-1_binary64_1438
71×neg-sub0_binary64_1437
68×sub-neg_binary64_1435
64×*-commutative_binary64_1373
60×associate-/l*_binary64_1387
56×distribute-rgt-neg-in_binary64_1400
47×+-commutative_binary64_1372
46×distribute-lft-neg-in_binary64_1399
42×log-pow_binary64_1531
41×associate-/l/_binary64_1389
37×unpow3_binary64_1508
35×cube-mult_binary64_1472
30×associate-/r*_binary64_1386
28×distribute-rgt-in_binary64_1392
22×distribute-lft-in_binary64_1391
19×pow-sqr_binary64_1415
18×distribute-lft-neg-out_binary64_1401
14×rem-sqrt-square_binary64_1455 distribute-neg-frac_binary64_1406
13×*-rgt-identity_binary64_1432 associate-/r/_binary64_1388 associate-+r-_binary64_1376
12×difference-of-squares_binary64_1411
11×pow-plus_binary64_1505 *-lft-identity_binary64_1431
10×cube-unmult_binary64_1479 swap-sqr_binary64_1409
/-rgt-identity_binary64_1433
distribute-rgt-neg-out_binary64_1402
div-sub_binary64_1447
associate-+l+_binary64_1375
log-rec_binary64_1530 exp-sum_binary64_1488 rem-square-sqrt_binary64_1454 unsub-neg_binary64_1436 distribute-rgt-out_binary64_1395 associate-+r+_binary64_1374
rem-cube-cbrt_binary64_1465 +-rgt-identity_binary64_1427 distribute-neg-in_binary64_1403
unpow1/2_binary64_1506 rem-cbrt-cube_binary64_1466 mul-1-neg_binary64_1434 distribute-rgt1-in_binary64_1398 associate--r+_binary64_1378
unpow1_binary64_1500 div-exp_binary64_1493 exp-diff_binary64_1490 1-exp_binary64_1486 distribute-rgt-out--_binary64_1396 associate-+l-_binary64_1377
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 unpow2_binary64_1507 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 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-neg_binary64_1469 rem-3cbrt-rft_binary64_1468 rem-3cbrt-lft_binary64_1467 sqr-abs_binary64_1457 sqr-neg_binary64_1456 remove-double-neg_binary64_1430 sub0-neg_binary64_1429 --rgt-identity_binary64_1428 +-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 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-lft1-in_binary64_1397 distribute-lft-out--_binary64_1394 distribute-lft-out_binary64_1393 count-2_binary64_1390 associate--r-_binary64_1381 associate--l-_binary64_1380 associate--l+_binary64_1379
Counts
191 → 134
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02594101
16143734
222583608
348463608
454723608

prune476.0ms (4.2%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1313134
Fresh022
Picked101
Done101
Total1335138
Error
16.3b
Counts
138 → 5
Compiler

Compiled 5760 to 5150 computations (10.6% saved)

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (hypot.f64 1 x))
0.2b
(pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3)
0.5b
(*.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (/.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (hypot.f64 1 x)))
2.0b
(-.f64 (pow.f64 1/2 3) (pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3))

rewrite1.5s (13.2%)

Algorithm
rewrite-expression-head
Error
16.3b
Rules
128×add-sqr-sqrt_binary64_1464
92×*-un-lft-identity_binary64_1442
90×times-frac_binary64_1448
66×add-cube-cbrt_binary64_1477
44×unpow-prod-down_binary64_1521 cube-prod_binary64_1470
37×sqrt-prod_binary64_1458
32×cancel-sign-sub-inv_binary64_1408
25×associate-*r*_binary64_1382
24×difference-of-squares_binary64_1411
14×add-exp-log_binary64_1480 add-cbrt-cube_binary64_1478
12×sqr-pow_binary64_1414
distribute-lft-out_binary64_1393
pow1_binary64_1503 associate-*l*_binary64_1383 associate-/l*_binary64_1387
add-log-exp_binary64_1481 div-inv_binary64_1439 sqrt-div_binary64_1459 unswap-sqr_binary64_1410
distribute-lft-out--_binary64_1394
div-exp_binary64_1493 cbrt-undiv_binary64_1476 flip3-+_binary64_1445 flip-+_binary64_1416 pow-unpow_binary64_1519 associate-/r*_binary64_1386
unpow3_binary64_1508 cube-mult_binary64_1472 prod-exp_binary64_1491 cbrt-unprod_binary64_1475 frac-times_binary64_1452 associate-*l/_binary64_1385 pow-exp_binary64_1510 rem-cube-cbrt_binary64_1465 associate-/l/_binary64_1389
diff-log_binary64_1534 flip3--_binary64_1446 difference-cubes_binary64_1444 sub-neg_binary64_1435 flip--_binary64_1417 pow-prod-down_binary64_1513 associate-*r/_binary64_1384 *-commutative_binary64_1373 pow-pow_binary64_1514 pow-to-exp_binary64_1511 cube-div_binary64_1471 frac-2neg_binary64_1453 clear-num_binary64_1441
Counts
4 → 220
Calls

4 calls:

28.0ms
(-.f64 (pow.f64 1/2 3) (pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3))
25.0ms
(*.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (/.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (hypot.f64 1 x)))
14.0ms
(/.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (hypot.f64 1 x))
6.0ms
(pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3)
Compiler

Compiled 13082 to 11703 computations (10.5% saved)

series560.0ms (4.9%)

Error
16.3b
Counts
4 → 12
Calls

4 calls:

150.0ms
(/.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (hypot.f64 1 x))
143.0ms
(-.f64 (pow.f64 1/2 3) (pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3))
126.0ms
(*.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (/.f64 (sqrt.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x)))) (hypot.f64 1 x)))
107.0ms
(pow.f64 (/.f64 1/2 (hypot.f64 1 x)) 3)
Compiler

Compiled 1620 to 1474 computations (9% saved)

simplify215.0ms (1.9%)

Algorithm
egg-herbie
Rules
476×unswap-sqr_binary64_1410
352×log-prod_binary64_1528
339×cancel-sign-sub-inv_binary64_1408
261×associate-*r*_binary64_1382
239×associate-*l*_binary64_1383
160×exp-prod_binary64_1494
127×log-div_binary64_1529
125×associate-*r/_binary64_1384
121×associate-*l/_binary64_1385
119×sqr-pow_binary64_1414
112×cube-prod_binary64_1470
92×associate-/l*_binary64_1387
90×*-commutative_binary64_1373
89×cube-div_binary64_1471
79×swap-sqr_binary64_1409
75×neg-mul-1_binary64_1438
73×neg-sub0_binary64_1437 sub-neg_binary64_1435
59×distribute-rgt-neg-in_binary64_1400
52×+-commutative_binary64_1372
47×distribute-lft-neg-in_binary64_1399
44×associate-/l/_binary64_1389
42×log-pow_binary64_1531
38×unpow3_binary64_1508
37×times-frac_binary64_1448
36×cube-mult_binary64_1472 associate-/r*_binary64_1386
31×*-rgt-identity_binary64_1432
25×*-lft-identity_binary64_1431
21×pow-sqr_binary64_1415
19×distribute-lft-neg-out_binary64_1401
17×rem-sqrt-square_binary64_1455
15×/-rgt-identity_binary64_1433 distribute-neg-frac_binary64_1406
14×associate-+r-_binary64_1376
12×pow-plus_binary64_1505 cube-unmult_binary64_1479 difference-of-squares_binary64_1411
10×associate-/r/_binary64_1388
log-rec_binary64_1530 distribute-rgt-neg-out_binary64_1402
rem-square-sqrt_binary64_1454 associate-+l+_binary64_1375
div-sub_binary64_1447 distribute-rgt-in_binary64_1392 distribute-lft-in_binary64_1391
exp-sum_binary64_1488 distribute-rgt-out_binary64_1395 associate-+r+_binary64_1374
rem-cube-cbrt_binary64_1465 unsub-neg_binary64_1436 +-rgt-identity_binary64_1427
rem-cbrt-cube_binary64_1466 distribute-rgt1-in_binary64_1398 associate-+l-_binary64_1377
unpow1/2_binary64_1506 unpow1_binary64_1500 div-exp_binary64_1493 exp-diff_binary64_1490 1-exp_binary64_1486 exp-1-e_binary64_1485 mul-1-neg_binary64_1434 distribute-rgt-out--_binary64_1396 count-2_binary64_1390
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 unpow2_binary64_1507 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 exp-neg_binary64_1489 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-rft_binary64_1468 rem-3cbrt-lft_binary64_1467 sqr-abs_binary64_1457 sqr-neg_binary64_1456 remove-double-neg_binary64_1430 sub0-neg_binary64_1429 --rgt-identity_binary64_1428 +-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 cancel-sign-sub_binary64_1407 distribute-frac-neg_binary64_1405 distribute-neg-out_binary64_1404 distribute-neg-in_binary64_1403 distribute-lft1-in_binary64_1397 distribute-lft-out--_binary64_1394 distribute-lft-out_binary64_1393 associate--r-_binary64_1381 associate--l-_binary64_1380 associate--l+_binary64_1379 associate--r+_binary64_1378
Counts
232 → 183
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02896217
16865553
226405395
346555395
450225395

prune951.0ms (8.3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1803183
Fresh224
Picked101
Done000
Total1835188
Error
16.3b
Counts
188 → 5
Compiler

Compiled 9518 to 8499 computations (10.7% saved)

regimes1.0s (9%)

Accuracy

Total 0.3b remaining (2%)

Threshold costs 0.3b (2%)

Compiler

Compiled 13485 to 12463 computations (7.6% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_1372
sub-neg_binary64_1435 *-commutative_binary64_1373
1-exp_binary64_1486 neg-mul-1_binary64_1438 neg-sub0_binary64_1437
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-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
02151
13051
23451
33651
43751
53551

end0.0ms (0%)

sample3.2s (28.2%)

Algorithm
intervals
Results
556.0ms2049×body2048valid
196.0ms976×body1024valid
195.0ms4229×body128valid
68.0ms485×body512valid
26.0ms261×body256valid
Compiler

Compiled 1960 to 1812 computations (7.6% saved)

Profiling

Loading profile data...