Commit 08cc9b6b authored by Andreas Klebinger's avatar Andreas Klebinger Committed by Alp Mestanogullari

Adjust normal runtimes for nofib along with related changes

Runtime for nofib benchmarks was all over the place.
This patch adjusts runtime for most benchmarks such
that it falls into the 0.2-2s range.

This means that:
* A default run will take longer
* Time spent will be better distributed among benchmarks.
* More benchmarks have runtimes long enough to be used
  for runtime analysis.

Some more changes were done which go hand in hand
with changing runtimes.
* Some benchmarks now create their input files during boot.
* Moved input files for anna in their own directory.
* Remove printing of output for some of the floating
  point heavy benchmarks.
* Added a comment about desired runtimes to README.
* Made grep actually benchmark something.
* Throw cachgrind out of the default benchmarks.
  The nondeterministic behaviour has been an issue for a
  while and it doesn't seem like an essential benchmark.

Test Plan: run nofib in modes slow/normal/fast

Reviewers: O26 nofib, alpmestan

Reviewed By: alpmestan

Subscribers: sgraf, alpmestan

Differential Revision: https://phabricator.haskell.org/D4989
parent a80baacf
......@@ -31,7 +31,11 @@ real/anna/anna
real/bspt/bspt
real/cacheprof/cacheprof
real/compress/compress
real/compress/compress.stdin
real/compress/compress.stdout
real/compress2/compress2
real/compress2/compress2.stdin
real/compress2/compress2.stdout
real/fem/fem
real/fluid/fluid
real/fulsom/fulsom
......
......@@ -56,3 +56,14 @@ Some benchmarks aren't run by default and require extra packages are
installed for the GHC compiler being tested. These packages include:
* stm - for smp benchmarks
## Adding benchmarks
If you add a benchmark try to set the problem sizes for
fast/normal/slow reasonably.
Runtimes for normal should be above 0.3s if that can be reasonably
achieved. Less than that and there is a chance
nofib-analyse will ignore the result if it falls below 0.2s.
......@@ -3,7 +3,7 @@ TOP = ../..
include $(TOP)/mk/boilerplate.mk
FAST_OPTS = 8 100
NORM_OPTS = 8 5000
NORM_OPTS = 8 3000
SLOW_OPTS = 8 5000
ifeq "$(HEAP)" "LARGE"
......
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -3,7 +3,7 @@ include $(TOP)/mk/boilerplate.mk
FAST_OPTS = 7
# NORM_OPTS should probably be 8 or 9
NORM_OPTS = 11
NORM_OPTS = 10
SLOW_OPTS = 11
ifeq "$(HEAP)" "LARGE"
......
2680
2680
2680
2680
2680
724
724
724
724
724
......@@ -8,8 +8,9 @@ SRC_HC_OPTS += -cpp -package old-time
# kMinTreeDepth = 4 :: Int
# kMaxTreeDepth = 17 :: Int
# NORM_OPTS = 17 500000 4 17
NORM_OPTS = 19 500000 5 22
FAST_OPTS = 17 400000 4 17
NORM_OPTS = 18 500000 4 19
SLOW_OPTS = 19 500000 5 22
ifeq "$(HEAP)" "LARGE"
SRC_RUNTEST_OPTS += +RTS -H180m -RTS
......
This diff is collapsed.
......@@ -2,7 +2,7 @@ TOP = ../..
include $(TOP)/mk/boilerplate.mk
FAST_OPTS = 1000000
NORM_OPTS = 10000000
NORM_OPTS = 5000000
SLOW_OPTS = 100000000
ifeq "$(HEAP)" "LARGE"
......
TOP=../..
include $(TOP)/mk/boilerplate.mk
NORM_OPTS = 1 2 4000 1000 1001 4000
FAST_OPTS = 1 2 2000 1000 1001 2000
NORM_OPTS = 1 2 2000 1000 1001 4000
SLOW_OPTS = 1 2 4000 1000 1001 4000
ifeq "$(HEAP)" "LARGE"
SRC_RUNTEST_OPTS += +RTS -H256m -RTS
......
[250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500]
[1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000]
This diff is collapsed.
This diff is collapsed.
......@@ -2,7 +2,7 @@ TOP = ../..
include $(TOP)/mk/boilerplate.mk
FAST_OPTS = 100000
NORM_OPTS = 300000
SLOW_OPTS = 600000
NORM_OPTS = 500000
SLOW_OPTS = 1000000
include $(TOP)/mk/target.mk
......@@ -4,8 +4,8 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 50
NORM_OPTS = 60
SLOW_OPTS = 60
NORM_OPTS = 80
SLOW_OPTS = 90
ifeq "$(HEAP)" "LARGE"
SRC_RUNTEST_OPTS += +RTS -H16m -RTS
......
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156]
[0,1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572]
[0,1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900]
[0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1]
[0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1,0%1]
[1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156]
[0,1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156,29869166945772625950142417512,116157871455782434250553845880,451959718027953471447609509424,1759414616608818870992479875972,6852456927844873497549658464312,26700952856774851904245220912664,104088460289122304033498318812080,405944995127576985730643443367112,1583850964596120042686772779038896,6182127958584855650487080847216336,24139737743045626825711458546273312,94295850558771979787935384946380125,368479169875816659479009042713546950,1440418573150919668872489894243865350,5632681584560312734993915705849145100,22033725021956517463358552614056949950,86218923998960285726185640663701108500,337485502510215975556783793455058624700,1321422108420282270489942177190229544600,5175569924646105559418940193995065716350,20276890389709399862928998568254641025700,79463489365077377841208237632349268884500,311496878311103321137536291518809134027240,1221395654430378811828760722007962130791020,4790408930363303911328386208394864461024520,18793142726809884575211361279087545193250040,73745243611532458459690151854647329239335600,289450081175264899454283846029490767264392230,1136359577947336271931632877004667456667613940,4462290049988320482463241297506133183499654740,17526585015616776834735140517915655636396234280,68854441132780194707888052034668647142985206100,270557451039395118028642463289168566420671280440,1063353702922273835973036658043476458723103404520,4180080073556524734514695828170907458428751314320,16435314834665426797069144960762886143367590394940,64633260585762914370496637486146181462681535261000,254224158304000796523953440778841647086547372026600]
[0,1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156,29869166945772625950142417512,116157871455782434250553845880,451959718027953471447609509424,1759414616608818870992479875972,6852456927844873497549658464312,26700952856774851904245220912664,104088460289122304033498318812080,405944995127576985730643443367112,1583850964596120042686772779038896,6182127958584855650487080847216336,24139737743045626825711458546273312,94295850558771979787935384946380125,368479169875816659479009042713546950,1440418573150919668872489894243865350,5632681584560312734993915705849145100,22033725021956517463358552614056949950,86218923998960285726185640663701108500,337485502510215975556783793455058624700,1321422108420282270489942177190229544600,5175569924646105559418940193995065716350,20276890389709399862928998568254641025700,79463489365077377841208237632349268884500,311496878311103321137536291518809134027240,1221395654430378811828760722007962130791020,4790408930363303911328386208394864461024520,18793142726809884575211361279087545193250040,73745243611532458459690151854647329239335600,289450081175264899454283846029490767264392230,1136359577947336271931632877004667456667613940,4462290049988320482463241297506133183499654740,17526585015616776834735140517915655636396234280,68854441132780194707888052034668647142985206100,270557451039395118028642463289168566420671280440,1063353702922273835973036658043476458723103404520,4180080073556524734514695828170907458428751314320,16435314834665426797069144960762886143367590394940,64633260585762914370496637486146181462681535261000]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156,29869166945772625950142417512,116157871455782434250553845880,451959718027953471447609509424,1759414616608818870992479875972,6852456927844873497549658464312,26700952856774851904245220912664,104088460289122304033498318812080,405944995127576985730643443367112]
[0,1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156,29869166945772625950142417512,116157871455782434250553845880,451959718027953471447609509424,1759414616608818870992479875972,6852456927844873497549658464312,26700952856774851904245220912664,104088460289122304033498318812080]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1,0 % 1]
[1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156,29869166945772625950142417512,116157871455782434250553845880,451959718027953471447609509424,1759414616608818870992479875972,6852456927844873497549658464312,26700952856774851904245220912664,104088460289122304033498318812080,405944995127576985730643443367112,1583850964596120042686772779038896,6182127958584855650487080847216336,24139737743045626825711458546273312,94295850558771979787935384946380125,368479169875816659479009042713546950,1440418573150919668872489894243865350,5632681584560312734993915705849145100,22033725021956517463358552614056949950,86218923998960285726185640663701108500,337485502510215975556783793455058624700,1321422108420282270489942177190229544600,5175569924646105559418940193995065716350,20276890389709399862928998568254641025700,79463489365077377841208237632349268884500,311496878311103321137536291518809134027240,1221395654430378811828760722007962130791020,4790408930363303911328386208394864461024520,18793142726809884575211361279087545193250040,73745243611532458459690151854647329239335600,289450081175264899454283846029490767264392230]
[0,1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700,1767263190,6564120420,24466267020,91482563640,343059613650,1289904147324,4861946401452,18367353072152,69533550916004,263747951750360,1002242216651368,3814986502092304,14544636039226909,55534064877048198,212336130412243110,812944042149730764,3116285494907301262,11959798385860453492,45950804324621742364,176733862787006701400,680425371729975800390,2622127042276492108820,10113918591637898134020,39044429911904443959240,150853479205085351660700,583300119592996693088040,2257117854077248073253720,8740328711533173390046320,33868773757191046886429490,131327898242169365477991900,509552245179617138054608572,1978261657756160653623774456,7684785670514316385230816156,29869166945772625950142417512,116157871455782434250553845880,451959718027953471447609509424,1759414616608818870992479875972,6852456927844873497549658464312,26700952856774851904245220912664,104088460289122304033498318812080,405944995127576985730643443367112,1583850964596120042686772779038896,6182127958584855650487080847216336,24139737743045626825711458546273312,94295850558771979787935384946380125,368479169875816659479009042713546950,1440418573150919668872489894243865350,5632681584560312734993915705849145100,22033725021956517463358552614056949950,86218923998960285726185640663701108500,337485502510215975556783793455058624700,1321422108420282270489942177190229544600,5175569924646105559418940193995065716350,20276890389709399862928998568254641025700,79463489365077377841208237632349268884500,311496878311103321137536291518809134027240,1221395654430378811828760722007962130791020,4790408930363303911328386208394864461024520,18793142726809884575211361279087545193250040,73745243611532458459690151854647329239335600]
......@@ -4,7 +4,10 @@ include $(TOP)/mk/boilerplate.mk
# Override default SRCS; the default is all source files, but
# we don't want to include paraffins.c
SRCS=Main.hs
PROG_ARGS += 500
FAST_OPTS = 500
NORM_OPTS = 1200
SLOW_OPTS = 1200
include $(TOP)/mk/target.mk
Bernoulli of 500 is (-16596380640568557229852123088077134206658664302806671892352650993155331641220960084014956088135770921465025323942809207851857992860213463783252745409096420932509953165466735675485979034817619983727209844291081908145597829674980159889976244240633746601120703300698329029710482600069717866917229113749797632930033559794717838407415772796504419464932337498642714226081743688706971990010734262076881238322867559275748219588404488023034528296023051638858467185173202483888794342720837413737644410765563213220043477396887812891242952336301344808165757942109887803692579439427973561487863524556256869403384306433922049078300720480361757680714198044230522015775475287075315668886299978958150756677417180004362981454396613646612327019784141740499835461) % 8365830
Bernoulli of 500 is (-16596380640568557229852123088077134206658664302806671892352650993155331641220960084014956088135770921465025323942809207851857992860213463783252745409096420932509953165466735675485979034817619983727209844291081908145597829674980159889976244240633746601120703300698329029710482600069717866917229113749797632930033559794717838407415772796504419464932337498642714226081743688706971990010734262076881238322867559275748219588404488023034528296023051638858467185173202483888794342720837413737644410765563213220043477396887812891242952336301344808165757942109887803692579439427973561487863524556256869403384306433922049078300720480361757680714198044230522015775475287075315668886299978958150756677417180004362981454396613646612327019784141740499835461) % 8365830
Bernoulli of 1200 is (-817283084907145111572399996796188186929948021171540635261702738551708111477702215521228614331934177097923932805704741877505315802099968644526923516831279629598808324483500152366458832081685317627237457631184752228020937570564254815882158305151302610199775789475165896446641596716277144097068737158145914138007078189232654452799125693796738978666141474572034951880049651276395258871736325031347278370751179112761098769648358184727719342195788517539042280312285503783317435767094772232188053832388556642971835257520841265556214518816887839317032756221651943099049943364078453046936556210226401672791424597231796910017302629622696813265414512846119459300648681522146826529719016531806862741126219273760900853654441200486609296441953907892179806096295493246096984193080919149475873154316697140961129301056531238774105902553097012500943368517979744922495110797729125277468841826780050573035174078049894629090206487768669888397451259970944341623362677477653024126280346797844898470774121915316087294309624558249263982077427309405848954032887670597024127853854053863101860744673817779233498065391358849151573236055043756596256765512898529624186525745647423833203492864408172918274220368064050268165386592076467519169108291998974562165780109655956163459370589797972659772102789228116001807018269700054669095401942407416366577517743712792893123263496888764252691912907256690059391501971681479057907563322214907522789738165164383590985187599722977665371684506905283120919288745868687850127677657732893365572116745162008104587855199249070829739803362683992055697988644557275081028767693452226101566312965265128113514859335607832326203448726729640979171828670950801951244855700251656696003668194895102278126290607925136142303094597971821276434274327369277030048595161456791992895045128523723566610941535184732307135369906011030556967118095937167514357218562889874618196941789991096385562335659565306542263831265064929677494773149851892197811967290338068875654631788048990868861878732183686740539647737128695224051703703609653147846199152309516725733395268923689546224793417101495035853409632416061296425464525649350834817897763332683838895024611803105183912115005657422506864991905658383153758107637611286988804559019826656034916431916119212601265690187857) % 42107247672297314156359710
......@@ -4,5 +4,5 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 450
NORM_OPTS = 1000
SLOW_OPTS = 1400
NORM_OPTS = 2000
SLOW_OPTS = 2200
[2,7,1,8,2,8,1,8,2,8,4,5,9,0,4,5,2,3,5,3,6,0,2,8,7,4,7,1,3,5,2,6,6,2,4,9,7,7,5,7,2,4,7,0,9,3,6,9,9,9,5,9,5,7,4,9,6,6,9,6,7,6,2,7,7,2,4,0,7,6,6,3,0,3,5,3,5,4,7,5,9,4,5,7,1,3,8,2,1,7,8,5,2,5,1,6,6,4,2,7,4,2,7,4,6,6,3,9,1,9,3,2,0,0,3,0,5,9,9,2,1,8,1,7,4,1,3,5,9,6,6,2,9,0,4,3,5,7,2,9,0,0,3,3,4,2,9,5,2,6,0,5,9,5,6,3,0,7,3,8,1,3,2,3,2,8,6,2,7,9,4,3,4,9,0,7,6,3,2,3,3,8,2,9,8,8,0,7,5,3,1,9,5,2,5,1,0,1,9,0,1,1,5,7,3,8,3,4,1,8,7,9,3,0,7,0,2,1,5,4,0,8,9,1,4,9,9,3,4,8,8,4,1,6,7,5,0,9,2,4,4,7,6,1,4,6,0,6,6,8,0,8,2,2,6,4,8,0,0,1,6,8,4,7,7,4,1,1,8,5,3,7,4,2,3,4,5,4,4,2,4,3,7,1,0,7,5,3,9,0,7,7,7,4,4,9,9,2,0,6,9,5,5,1,7,0,2,7,6,1,8,3,8,6,0,6,2,6,1,3,3,1,3,8,4,5,8,3,0,0,0,7,5,2,0,4,4,9,3,3,8,2,6,5,6,0,2,9,7,6,0,6,7,3,7,1,1,3,2,0,0,7,0,9,3,2,8,7,0,9,1,2,7,4,4,3,7,4,7,0,4,7,2,3,0,6,9,6,9,7,7,2,0,9,3,1,0,1,4,1,6,9,2,8,3,6,8,1,9,0,2,5,5,1,5,1,0,8,6,5,7,4,6,3,7,7,2,1,1,1,2,5,2,3,8,9,7,8,4,4,2,5,0,5,6,9,5,3,6,9,6,7,7,0,7,8,5,4,4,9,9,6,9,9,6,7,9,4,6,8,6,4,4,5,4,9,0,5,9,8,7,9,3,1,6,3,6,8,8,9,2,3,0,0,9,8,7,9,3,1,2,7,7,3,6,1,7,8,2,1,5,4,2,4,9,9,9,2,2,9,5,7,6,3,5,1,4,8,2,2,0,8,2,6,9,8,9,5,1,9,3,6,6,8,0,3,3,1,8,2,5,2,8,8,6,9,3,9,8,4,9,6,4,6,5,1,0,5,8,2,0,9,3,9,2,3,9,8,2,9,4,8,8,7,9,3,3,2,0,3,6,2,5,0,9,4,4,3,1,1,7,3,0,1,2,3,8,1,9,7,0,6,8,4,1,6,1,4,0,3,9,7,0,1,9,8,3,7,6,7,9,3,2,0,6,8,3,2,8,2,3,7,6,4,6,4,8,0,4,2,9,5,3,1,1,8,0,2,3,2,8,7,8,2,5,0,9,8,1,9,4,5,5,8,1,5,3,0,1,7,5,6,7,1,7,3,6,1,3,3,2,0,6,9,8,1,1,2,5,0,9,9,6,1,8,1,8,8,1,5,9,3,0,4,1,6,9,0,3,5,1,5,9,8,8,8,8,5,1,9,3,4,5,8,0,7,2,7,3,8,6,6,7,3,8,5,8,9,4,2,2,8,7,9,2,2,8,4,9,9,8,9,2,0,8,6,8,0,5,8,2,5,7,4,9,2,7,9,6,1,0,4,8,4,1,9,8,4,4,4,3,6,3,4,6,3,2,4,4,9,6,8,4,8,7,5,6,0,2,3,3,6,2,4,8,2,7,0,4,1,9,7,8,6,2,3,2,0,9,0,0,2,1,6,0,9,9,0,2,3,5,3,0,4,3,6,9,9,4,1,8,4,9,1,4,6,3,1,4,0,9,3,4,3,1,7,3,8,1,4,3,6,4,0,5,4,6,2,5,3,1,5,2,0,9,6,1,8,3,6,9,0,8,8,8,7,0,7,0,1,6,7,6,8,3,9,6,4,2,4,3,7,8,1,4,0,5,9,2,7,1,4,5,6,3,5,4,9,0,6,1,3,0,3,1,0,7,2,0,8,5,1,0,3,8,3,7,5,0,5,1,0,1,1,5,7,4,7,7,0,4,1,7,1,8,9,8,6,1,0,6,8,7,3,9,6,9,6,5,5,2,1,2,6,7,1,5,4,6,8,8,9,5,7,0,3,5,0,3,5,4,0,2,1,2,3,4,0,7,8,4,9,8,1,9,3,3,4,3,2,1,0,6,8,1,7,0,1,2,1,0,0,5,6,2,7,8,8,0,2,3,5,1,9,3,0,3,3,2,2,4,7,4,5,0,1,5,8,5,3,9,0,4,7,3,0,4,1,9,9,5,7,7,7,7,0,9,3,5,0,3,6,6,0,4,1,6,9,9,7,3,2,9,7,2,5,0,8,8,6,8,7,6,9,6,6,4,0,3,5,5,5,7,0,7,1,6,2,2,6,8,4,4,7,1,6,2,5,6,0,7,9,8,8,2,6,5,1,7,8,7,1,3,4,1,9,5,1,2,4,6,6,5,2,0,1,0,3,0,5,9,2,1,2,3,6,6,7,7,1,9,4,3,2,5,2,7,8,6,7,5,3,9,8,5,5,8,9,4,4,8,9,6,9,7,0,9,6,4,0,9,7,5,4,5,9,1,8,5,6,9,5,6,3,8,0,2,3,6,3,7,0,1,6,2,1,1,2,0,4,7,7,4,2,7,2,2,8,3,6,4,8,9,6,1,3,4,2,2,5,1,6,4,4,5,0,7,8,1,8,2,4,4,2,3,5,2,9,4,8,6,3,6,3,7,2,1,4,1,7,4,0,2,3,8,8,9,3,4,4,1,2,4,7,9,6,3,5,7,4,3,7,0,2,6,3,7,5,5,2,9,4,4,4,8,3,3,7,9,9,8,0,1,6,1,2,5,4,9,2,2,7,8,5,0,9,2,5,7,7,8,2,5,6,2,0,9,2,6,2,2,6,4,8,3,2,6,2,7,7,9,3,3,3,8,6,5,6,6,4,8,1,6,2,7,7,2,5,1,6,4,0,1,9,1,0,5,9,0,0,4,9,1,6,4,4,9,9,8,2]
[2,7,1,8,2,8,1,8,2,8,4,5,9,0,4,5,2,3,5,3,6,0,2,8,7,4,7,1,3,5,2,6,6,2,4,9,7,7,5,7,2,4,7,0,9,3,6,9,9,9,5,9,5,7,4,9,6,6,9,6,7,6,2,7,7,2,4,0,7,6,6,3,0,3,5,3,5,4,7,5,9,4,5,7,1,3,8,2,1,7,8,5,2,5,1,6,6,4,2,7,4,2,7,4,6,6,3,9,1,9,3,2,0,0,3,0,5,9,9,2,1,8,1,7,4,1,3,5,9,6,6,2,9,0,4,3,5,7,2,9,0,0,3,3,4,2,9,5,2,6,0,5,9,5,6,3,0,7,3,8,1,3,2,3,2,8,6,2,7,9,4,3,4,9,0,7,6,3,2,3,3,8,2,9,8,8,0,7,5,3,1,9,5,2,5,1,0,1,9,0,1,1,5,7,3,8,3,4,1,8,7,9,3,0,7,0,2,1,5,4,0,8,9,1,4,9,9,3,4,8,8,4,1,6,7,5,0,9,2,4,4,7,6,1,4,6,0,6,6,8,0,8,2,2,6,4,8,0,0,1,6,8,4,7,7,4,1,1,8,5,3,7,4,2,3,4,5,4,4,2,4,3,7,1,0,7,5,3,9,0,7,7,7,4,4,9,9,2,0,6,9,5,5,1,7,0,2,7,6,1,8,3,8,6,0,6,2,6,1,3,3,1,3,8,4,5,8,3,0,0,0,7,5,2,0,4,4,9,3,3,8,2,6,5,6,0,2,9,7,6,0,6,7,3,7,1,1,3,2,0,0,7,0,9,3,2,8,7,0,9,1,2,7,4,4,3,7,4,7,0,4,7,2,3,0,6,9,6,9,7,7,2,0,9,3,1,0,1,4,1,6,9,2,8,3,6,8,1,9,0,2,5,5,1,5,1,0,8,6,5,7,4,6,3,7,7,2,1,1,1,2,5,2,3,8,9,7,8,4,4,2,5,0,5,6,9,5,3,6,9,6,7,7,0,7,8,5,4,4,9,9,6,9,9,6,7,9,4,6,8,6,4,4,5,4,9,0,5,9,8,7,9,3,1,6,3,6,8,8,9,2,3,0,0,9,8,7,9,3,1,2,7,7,3,6,1,7,8,2,1,5,4,2,4,9,9,9,2,2,9,5,7,6,3,5,1,4,8,2,2,0,8,2,6,9,8,9,5,1,9,3,6,6,8,0,3,3,1,8,2,5,2,8,8,6,9,3,9,8,4,9,6,4,6,5,1,0,5,8,2,0,9,3,9,2,3,9,8,2,9,4,8,8,7,9,3,3,2,0,3,6,2,5,0,9,4,4,3,1,1,7,3,0,1,2,3,8,1,9,7,0,6,8,4,1,6,1,4,0,3,9,7,0,1,9,8,3,7,6,7,9,3,2,0,6,8,3,2,8,2,3,7,6,4,6,4,8,0,4,2,9,5,3,1,1,8,0,2,3,2,8,7,8,2,5,0,9,8,1,9,4,5,5,8,1,5,3,0,1,7,5,6,7,1,7,3,6,1,3,3,2,0,6,9,8,1,1,2,5,0,9,9,6,1,8,1,8,8,1,5,9,3,0,4,1,6,9,0,3,5,1,5,9,8,8,8,8,5,1,9,3,4,5,8,0,7,2,7,3,8,6,6,7,3,8,5,8,9,4,2,2,8,7,9,2,2,8,4,9,9,8,9,2,0,8,6,8,0,5,8,2,5,7,4,9,2,7,9,6,1,0,4,8,4,1,9,8,4,4,4,3,6,3,4,6,3,2,4,4,9,6,8,4,8,7,5,6,0,2,3,3,6,2,4,8,2,7,0,4,1,9,7,8,6,2,3,2,0,9,0,0,2,1,6,0,9,9,0,2,3,5,3,0,4,3,6,9,9,4,1,8,4,9,1,4,6,3,1,4,0,9,3,4,3,1,7,3,8,1,4,3,6,4,0,5,4,6,2,5,3,1,5,2,0,9,6,1,8,3,6,9,0,8,8,8,7,0,7,0,1,6,7,6,8,3,9,6,4,2,4,3,7,8,1,4,0,5,9,2,7,1,4,5,6,3,5,4,9,0,6,1,3,0,3,1,0,7,2,0,8,5,1,0,3,8,3,7,5,0,5,1,0,1,1,5,7,4,7,7,0,4,1,7,1,8,9,8,6,1,0,6,8,7,3,9,6,9,6,5,5,2,1,2,6,7,1,5,4,6,8,8,9,5,7,0,3,5,0,3,5,4,0,2,1,2,3,4,0,7,8,4,9,8,1,9,3,3,4,3,2,1,0,6,8,1,7,0,1,2,1,0,0,5,6,2,7,8,8,0,2,3,5,1,9,3,0,3,3,2,2,4,7,4,5,0,1,5,8,5,3,9,0,4,7,3,0,4,1,9,9,5,7,7,7,7,0,9,3,5,0,3,6,6,0,4,1,6,9,9,7,3,2,9,7,2,5,0,8,8,6,8,7,6,9,6,6,4,0,3,5,5,5,7,0,7,1,6,2,2,6,8,4,4,7,1,6,2,5,6,0,7,9,8,8,2,6,5,1,7,8,7,1,3,4,1,9,5,1,2,4,6,6,5,2,0,1,0,3,0,5,9,2,1,2,3,6,6,7,7,1,9,4,3,2,5,2,7,8,6,7,5,3,9,8,5,5,8,9,4,4,8,9,6,9,7,0,9,6,4,0,9,7,5,4,5,9,1,8,5,6,9,5,6,3,8,0,2,3,6,3,7,0,1,6,2,1,1,2,0,4,7,7,4,2,7,2,2,8,3,6,4,8,9,6,1,3,4,2,2,5,1,6,4,4,5,0,7,8,1,8,2,4,4,2,3,5,2,9,4,8,6,3,6,3,7,2,1,4,1,7,4,0,2,3,8,8,9,3,4,4,1,2,4,7,9,6,3,5,7,4,3,7,0,2,6,3,7,5,5,2,9,4,4,4,8,3,3,7,9,9,8,0,1,6,1,2,5,4,9,2,2,7,8,5,0,9,2,5,7,7,8,2,5,6,2,0,9,2,6,2,2,6,4,8,3,2,6,2,7,7,9,3,3,3,8,6,5,6,6,4,8,1,6,2,7,7,2,5,1,6,4,0,1,9,1,0,5,9,0,0,4,9,1,6,4,4,9,9,8,2,8,9,3,1,5,0,5,6,6,0,4,7,2,5,8,0,2,7,7,8,6,3,1,8,6,4,1,5,5,1,9,5,6,5,3,2,4,4,2,5,8,6,9,8,2,9,4,6,9,5,9,3,0,8,0,1,9,1,5,2,9,8,7,2,1,1,7,2,5,5,6,3,4,7,5,4,6,3,9,6,4,4,7,9,1,0,1,4,5,9,0,4,0,9,0,5,8,6,2,9,8,4,9,6,7,9,1,2,8,7,4,0,6,8,7,0,5,0,4,8,9,5,8,5,8,6,7,1,7,4,7,9,8,5,4,6,6,7,7,5,7,5,7,3,2,0,5,6,8,1,2,8,8,4,5,9,2,0,5,4,1,3,3,4,0,5,3,9,2,2,0,0,0,1,1,3,7,8,6,3,0,0,9,4,5,5,6,0,6,8,8,1,6,6,7,4,0,0,1,6,9,8,4,2,0,5,5,8,0,4,0,3,3,6,3,7,9,5,3,7,6,4,5,2,0,3,0,4,0,2,4,3,2,2,5,6,6,1,3,5,2,7,8,3,6,9,5,1,1,7,7,8,8,3,8,6,3,8,7,4,4,3,9,6,6,2,5,3,2,2,4,9,8,5,0,6,5,4,9,9,5,8,8,6,2,3,4,2,8,1,8,9,9,7,0,7,7,3,3,2,7,6,1,7,1,7,8,3,9,2,8,0,3,4,9,4,6,5,0,1,4,3,4,5,5,8,8,9,7,0,7,1,9,4,2,5,8,6,3,9,8,7,7,2,7,5,4,7,1,0,9,6,2,9,5,3,7,4,1,5,2,1,1,1,5,1,3,6,8,3,5,0,6,2,7,5,2,6,0,2,3,2,6,4,8,4,7,2,8,7,0,3,9,2,0,7,6,4,3,1,0,0,5,9,5,8,4,1,1,6,6,1,2,0,5,4,5,2,9,7,0,3,0,2,3,6,4,7,2,5,4,9,2,9,6,6,6,9,3,8,1,1,5,1,3,7,3,2,2,7,5,3,6,4,5,0,9,8,8,8,9,0,3,1,3,6,0,2,0,5,7,2,4,8,1,7,6,5,8,5,1,1,8,0,6,3,0,3,6,4,4,2,8,1,2,3,1,4,9,6,5,5,0,7,0,4,7,5,1,0,2,5,4,4,6,5,0,1,1,7,2,7,2,1,1,5,5,5,1,9,4,8,6,6,8,5,0,8,0,0,3,6,8,5,3,2,2,8,1,8,3,1,5,2,1,9,6,0,0,3,7,3,5,6,2,5,2,7,9,4,4,9,5,1,5,8,2,8,4,1,8,8,2,9,4,7,8,7,6,1,0,8,5,2,6,3,9,8,1,3,9,5,5,9,9,0,0,6,7,3,7,6,4,8,2,9,2,2,4,4,3,7,5,2,8,7,1,8,4,6,2,4,5,7,8,0,3,6,1,9,2,9,8,1,9,7,1,3,9,9,1,4,7,5,6,4,4,8,8,2,6,2,6,0,3,9,0,3,3,8,1,4,4,1,8,2,3,2,6,2,5,1,5,0,9,7,4,8,2,7,9,8,7,7,7,9,9,6,4,3,7,3,0,8,9,9,7,0,3,8,8,8,6,7,7,8,2,2,7,1,3,8,3,6,0,5,7,7,2,9,7,8,8,2,4,1,2,5,6,1,1,9,0,7,1,7,6,6,3,9,4,6,5,0,7,0,6,3,3,0,4,5,2,7,9,5,4,6,6,1,8,5,5,0,9,6,6,6,6,1,8,5,6,6,4,7,0,9,7,1,1,3,4,4,4,7,4,0,1,6]
[2,7,1,8,2,8,1,8,2,8,4,5,9,0,4,5,2,3,5,3,6,0,2,8,7,4,7,1,3,5,2,6,6,2,4,9,7,7,5,7,2,4,7,0,9,3,6,9,9,9,5,9,5,7,4,9,6,6,9,6,7,6,2,7,7,2,4,0,7,6,6,3,0,3,5,3,5,4,7,5,9,4,5,7,1,3,8,2,1,7,8,5,2,5,1,6,6,4,2,7,4,2,7,4,6,6,3,9,1,9,3,2,0,0,3,0,5,9,9,2,1,8,1,7,4,1,3,5,9,6,6,2,9,0,4,3,5,7,2,9,0,0,3,3,4,2,9,5,2,6,0,5,9,5,6,3,0,7,3,8,1,3,2,3,2,8,6,2,7,9,4,3,4,9,0,7,6,3,2,3,3,8,2,9,8,8,0,7,5,3,1,9,5,2,5,1,0,1,9,0,1,1,5,7,3,8,3,4,1,8,7,9,3,0,7,0,2,1,5,4,0,8,9,1,4,9,9,3,4,8,8,4,1,6,7,5,0,9,2,4,4,7,6,1,4,6,0,6,6,8,0,8,2,2,6,4,8,0,0,1,6,8,4,7,7,4,1,1,8,5,3,7,4,2,3,4,5,4,4,2,4,3,7,1,0,7,5,3,9,0,7,7,7,4,4,9,9,2,0,6,9,5,5,1,7,0,2,7,6,1,8,3,8,6,0,6,2,6,1,3,3,1,3,8,4,5,8,3,0,0,0,7,5,2,0,4,4,9,3,3,8,2,6,5,6,0,2,9,7,6,0,6,7,3,7,1,1,3,2,0,0,7,0,9,3,2,8,7,0,9,1,2,7,4,4,3,7,4,7,0,4,7,2,3,0,6,9,6,9,7,7,2,0,9,3,1,0,1,4,1,6,9,2,8,3,6,8,1,9,0,2,5,5,1,5,1,0,8,6,5,7,4,6,3,7,7,2,1,1,1,2,5,2,3,8,9,7,8,4,4,2,5,0,5,6,9,5,3,6,9,6,7,7,0,7,8,5,4,4,9,9,6,9,9,6,7,9,4,6,8,6,4,4,5,4,9,0,5,9,8,7,9,3,1,6,3,6,8,8,9,2,3,0,0,9,8,7,9,3,1,2,7,7,3,6,1,7,8,2,1,5,4,2,4,9,9,9,2,2,9,5,7,6,3,5,1,4,8,2,2,0,8,2,6,9,8,9,5,1,9,3,6,6,8,0,3,3,1,8,2,5,2,8,8,6,9,3,9,8,4,9,6,4,6,5,1,0,5,8,2,0,9,3,9,2,3,9,8,2,9,4,8,8,7,9,3,3,2,0,3,6,2,5,0,9,4,4,3,1,1,7,3,0,1,2,3,8,1,9,7,0,6,8,4,1,6,1,4,0,3,9,7,0,1,9,8,3,7,6,7,9,3,2,0,6,8,3,2,8,2,3,7,6,4,6,4,8,0,4,2,9,5,3,1,1,8,0,2,3,2,8,7,8,2,5,0,9,8,1,9,4,5,5,8,1,5,3,0,1,7,5,6,7,1,7,3,6,1,3,3,2,0,6,9,8,1,1,2,5,0,9,9,6,1,8,1,8,8,1,5,9,3,0,4,1,6,9,0,3,5,1,5,9,8,8,8,8,5,1,9,3,4,5,8,0,7,2,7,3,8,6,6,7,3,8,5,8,9,4,2,2,8,7,9,2,2,8,4,9,9,8,9,2,0,8,6,8,0,5,8,2,5,7,4,9,2,7,9,6,1,0,4,8,4,1,9,8,4,4,4,3,6,3,4,6,3,2,4,4,9,6,8,4,8,7,5,6,0,2,3,3,6,2,4,8,2,7,0,4,1,9,7,8,6,2,3,2,0,9,0,0,2,1,6,0,9,9,0,2,3,5,3,0,4,3,6,9,9,4,1,8,4,9,1,4,6,3,1,4,0,9,3,4,3,1,7,3,8,1,4,3,6,4,0,5,4,6,2,5,3,1,5,2,0,9,6,1,8,3,6,9,0,8,8,8,7,0,7,0,1,6,7,6,8,3,9,6,4,2,4,3,7,8,1,4,0,5,9,2,7,1,4,5,6,3,5,4,9,0,6,1,3,0,3,1,0,7,2,0,8,5,1,0,3,8,3,7,5,0,5,1,0,1,1,5,7,4,7,7,0,4,1,7,1,8,9,8,6,1,0,6,8,7,3,9,6,9,6,5,5,2,1,2,6,7,1,5,4,6,8,8,9,5,7,0,3,5,0,3,5]
[2,7,1,8,2,8,1,8,2,8,4,5,9,0,4,5,2,3,5,3,6,0,2,8,7,4,7,1,3,5,2,6,6,2,4,9,7,7,5,7,2,4,7,0,9,3,6,9,9,9,5,9,5,7,4,9,6,6,9,6,7,6,2,7,7,2,4,0,7,6,6,3,0,3,5,3,5,4,7,5,9,4,5,7,1,3,8,2,1,7,8,5,2,5,1,6,6,4,2,7,4,2,7,4,6,6,3,9,1,9,3,2,0,0,3,0,5,9,9,2,1,8,1,7,4,1,3,5,9,6,6,2,9,0,4,3,5,7,2,9,0,0,3,3,4,2,9,5,2,6,0,5,9,5,6,3,0,7,3,8,1,3,2,3,2,8,6,2,7,9,4,3,4,9,0,7,6,3,2,3,3,8,2,9,8,8,0,7,5,3,1,9,5,2,5,1,0,1,9,0,1,1,5,7,3,8,3,4,1,8,7,9,3,0,7,0,2,1,5,4,0,8,9,1,4,9,9,3,4,8,8,4,1,6,7,5,0,9,2,4,4,7,6,1,4,6,0,6,6,8,0,8,2,2,6,4,8,0,0,1,6,8,4,7,7,4,1,1,8,5,3,7,4,2,3,4,5,4,4,2,4,3,7,1,0,7,5,3,9,0,7,7,7,4,4,9,9,2,0,6,9,5,5,1,7,0,2,7,6,1,8,3,8,6,0,6,2,6,1,3,3,1,3,8,4,5,8,3,0,0,0,7,5,2,0,4,4,9,3,3,8,2,6,5,6,0,2,9,7,6,0,6,7,3,7,1,1,3,2,0,0,7,0,9,3,2,8,7,0,9,1,2,7,4,4,3,7,4,7,0,4,7,2,3,0,6,9,6,9,7,7,2,0,9,3,1,0,1,4,1,6,9,2,8,3,6,8,1,9,0,2,5,5,1,5,1,0,8,6,5,7,4,6,3,7,7,2,1,1,1,2,5,2,3,8,9,7,8,4,4,2,5,0,5,6,9,5,3,6,9,6,7,7,0,7,8,5,4,4,9,9,6,9,9,6,7,9,4,6,8,6,4,4,5,4,9,0,5,9,8,7,9,3,1,6,3,6,8,8,9,2,3,0,0,9,8,7,9,3,1,2,7,7,3,6,1,7,8,2,1,5,4,2,4,9,9,9,2,2,9,5,7,6,3,5,1,4,8,2,2,0,8,2,6,9,8,9,5,1,9,3,6,6,8,0,3,3,1,8,2,5,2,8,8,6,9,3,9,8,4,9,6,4,6,5,1,0,5,8,2,0,9,3,9,2,3,9,8,2,9,4,8,8,7,9,3,3,2,0,3,6,2,5,0,9,4,4,3,1,1,7,3,0,1,2,3,8,1,9,7,0,6,8,4,1,6,1,4,0,3,9,7,0,1,9,8,3,7,6,7,9,3,2,0,6,8,3,2,8,2,3,7,6,4,6,4,8,0,4,2,9,5,3,1,1,8,0,2,3,2,8,7,8,2,5,0,9,8,1,9,4,5,5,8,1,5,3,0,1,7,5,6,7,1,7,3,6,1,3,3,2,0,6,9,8,1,1,2,5,0,9,9,6,1,8,1,8,8,1,5,9,3,0,4,1,6,9,0,3,5,1,5,9,8,8,8,8,5,1,9,3,4,5,8,0,7,2,7,3,8,6,6,7,3,8,5,8,9,4,2,2,8,7,9,2,2,8,4,9,9,8,9,2,0,8,6,8,0,5,8,2,5,7,4,9,2,7,9,6,1,0,4,8,4,1,9,8,4,4,4,3,6,3,4,6,3,2,4,4,9,6,8,4,8,7,5,6,0,2,3,3,6,2,4,8,2,7,0,4,1,9,7,8,6,2,3,2,0,9,0,0,2,1,6,0,9,9,0,2,3,5,3,0,4,3,6,9,9,4,1,8,4,9,1,4,6,3,1,4,0,9,3,4,3,1,7,3,8,1,4,3,6,4,0,5,4,6,2,5,3,1,5,2,0,9,6,1,8,3,6,9,0,8,8,8,7,0,7,0,1,6,7,6,8,3,9,6,4,2,4,3,7,8,1,4,0,5,9,2,7,1,4,5,6,3,5,4,9,0,6,1,3,0,3,1,0,7,2,0,8,5,1,0,3,8,3,7,5,0,5,1,0,1,1,5,7,4,7,7,0,4,1,7,1,8,9,8,6,1,0,6,8,7,3,9,6,9,6,5,5,2,1,2,6,7,1,5,4,6,8,8,9,5,7,0,3,5,0,3,5,4,0,2,1,2,3,4,0,7,8,4,9,8,1,9,3,3,4,3,2,1,0,6,8,1,7,0,1,2,1,0,0,5,6,2,7,8,8,0,2,3,5,1,9,3,0,3,3,2,2,4,7,4,5,0,1,5,8,5,3,9,0,4,7,3,0,4,1,9,9,5,7,7,7,7,0,9,3,5,0,3,6,6,0,4,1,6,9,9,7,3,2,9,7,2,5,0,8,8,6,8,7,6,9,6,6,4,0,3,5,5,5,7,0,7,1,6,2,2,6,8,4,4,7,1,6,2,5,6,0,7,9,8,8,2,6,5,1,7,8,7,1,3,4,1,9,5,1,2,4,6,6,5,2,0,1,0,3,0,5,9,2,1,2,3,6,6,7,7,1,9,4,3,2,5,2,7,8,6,7,5,3,9,8,5,5,8,9,4,4,8,9,6,9,7,0,9,6,4,0,9,7,5,4,5,9,1,8,5,6,9,5,6,3,8,0,2,3,6,3,7,0,1,6,2,1,1,2,0,4,7,7,4,2,7,2,2,8,3,6,4,8,9,6,1,3,4,2,2,5,1,6,4,4,5,0,7,8,1,8,2,4,4,2,3,5,2,9,4,8,6,3,6,3,7,2,1,4,1,7,4,0,2,3,8,8,9,3,4,4,1,2,4,7,9,6,3,5,7,4,3,7,0,2,6,3,7,5,5,2,9,4,4,4,8,3,3,7,9,9,8,0,1,6,1,2,5,4,9,2,2,7,8,5,0,9,2,5,7,7,8,2,5,6,2,0,9,2,6,2,2,6,4,8,3,2,6,2,7,7,9,3,3,3,8,6,5,6,6,4,8,1,6,2,7,7,2,5,1,6,4,0,1,9,1,0,5,9,0,0,4,9,1,6,4,4,9,9,8,2,8,9,3,1,5,0,5,6,6,0,4,7,2,5,8,0,2,7,7,8,6,3,1,8,6,4,1,5,5,1,9,5,6,5,3,2,4,4,2,5,8,6,9,8,2,9,4,6,9,5,9,3,0,8,0,1,9,1,5,2,9,8,7,2,1,1,7,2,5,5,6,3,4,7,5,4,6,3,9,6,4,4,7,9,1,0,1,4,5,9,0,4,0,9,0,5,8,6,2,9,8,4,9,6,7,9,1,2,8,7,4,0,6,8,7,0,5,0,4,8,9,5,8,5,8,6,7,1,7,4,7,9,8,5,4,6,6,7,7,5,7,5,7,3,2,0,5,6,8,1,2,8,8,4,5,9,2,0,5,4,1,3,3,4,0,5,3,9,2,2,0,0,0,1,1,3,7,8,6,3,0,0,9,4,5,5,6,0,6,8,8,1,6,6,7,4,0,0,1,6,9,8,4,2,0,5,5,8,0,4,0,3,3,6,3,7,9,5,3,7,6,4,5,2,0,3,0,4,0,2,4,3,2,2,5,6,6,1,3,5,2,7,8,3,6,9,5,1,1,7,7,8,8,3,8,6,3,8,7,4,4,3,9,6,6,2,5,3,2,2,4,9,8,5,0,6,5,4,9,9,5,8,8,6,2,3,4,2,8,1,8,9,9,7,0,7,7,3,3,2,7,6,1,7,1,7,8,3,9,2,8,0,3,4,9,4,6,5,0,1,4,3,4,5,5,8,8,9,7,0,7,1,9,4,2,5,8,6,3,9,8,7,7,2,7,5,4,7,1,0,9,6,2,9,5,3,7,4,1,5,2,1,1,1,5,1,3,6,8,3,5,0,6,2,7,5,2,6,0,2,3,2,6,4,8,4,7,2,8,7,0,3,9,2,0,7,6,4,3,1,0,0,5,9,5,8,4,1,1,6,6,1,2,0,5,4,5,2,9,7,0,3,0,2,3,6,4,7,2,5,4,9,2,9,6,6,6,9,3,8,1,1,5,1,3,7,3,2,2,7,5,3,6,4,5,0,9,8,8,8,9,0,3,1,3,6,0,2,0,5,7,2,4,8,1,7,6,5,8,5,1,1,8,0,6,3,0,3,6,4,4,2,8,1,2,3,1,4,9,6,5,5,0,7,0,4,7,5,1,0,2,5,4,4,6,5,0,1,1,7,2,7,2,1,1,5,5,5,1,9,4,8,6,6,8,5,0,8,0,0,3,6,8,5,3,2,2,8,1,8,3,1,5,2,1,9,6,0,0,3,7,3,5,6,2,5,2,7,9,4,4,9,5,1,5,8,2,8,4,1,8,8,2,9,4,7,8,7,6,1,0,8,5,2,6,3,9,8,1,3]
......@@ -4,5 +4,5 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 450
NORM_OPTS = 2000
SLOW_OPTS = 2700
NORM_OPTS = 3000
SLOW_OPTS = 3200
"2.7182818284590452353602874713526624977572470936999595749669676277240766303535475945713821785251664274274663919320030599218174135966290435729003342952605956307381323286279434907632338298807531952510190115738341879307021540891499348841675092447614606680822648001684774118537423454424371075390777449920695517027618386062613313845830007520449338265602976067371132007093287091274437470472306969772093101416928368190255151086574637721112523897844250569536967707854499699679468644549059879316368892300987931277361782154249992295763514822082698951936680331825288693984964651058209392398294887933203625094431173012381970684161403970198376793206832823764648042953118023287825098194558153017567173613320698112509961818815930416903515988885193458072738667385894228792284998920868058257492796104841984443634632449684875602336248270419786232090021609902353043699418491463140934317381436405462531520961836908887070167683964243781405927145635490613031072085103837505101157477041718986106873969655212671546889570350354021234078498193343210681701210056278802351930332247450158539047304199577770935036604169973297250886876966403555707162268447162560798826517871341951246652010305921236677194325278675398558944896970964097545918569563802363701621120477427228364896134225164450781824423529486363721417402388934412479635743702637552944483379980161254922785092577825620926226483262779333865664816277251640191059004916449982893150566047258027786318641551956532442586982946959308019152987211725563475463964479101459040905862984967912874068705048958586717479854667757573205681288459205413340539220001137863009455606881667400169842055804033637953764520304024322566135278369511778838638744396625322498506549958862342818997077332761717839280349465014345588970719425863987727547109629537415211151368350627526023264847287039207643100595841166120545297030236472549296669381151373227536450988890313602057248176585118063036442812314965507047510254465011727211555194866850800368532281831521960037356252794495158284188294787610852639813955990067376482922443752871846245780361929819713991475644882626039033814418232625150974827987779964373089970388867782271383605772978824125611907176639465070633045279546618550966661856647097113444740160704626215680717481877844371436988218559670959102596862002353718588748569652200050311734392073211390803293634479727355955277349071783793421637012050054513263835440001863239914907054797780566978533580489669062951194324730995876552368128590413832411607226029983305353708761389396391779574540161372236187893652605381558415871869255386061647798340254351284396129460352913325942794904337299085731580290958631382683291477116396337092400316894586360606458459251269946557248391865642097526850823075442545993"
"2.718281828459045235360287471352662497757247093699959574966967627724076630353547594571382178525166427427466391932003059921817413596629043572900334295260595630738132328627943490763233829880753195251019011573834187930702154089149934884167509244761460668082264800168477411853742345442437107539077744992069551702761838606261331384583000752044933826560297606737113200709328709127443747047230696977209310141692836819025515108657463772111252389784425056953696770785449969967946864454905987931636889230098793127736178215424999229576351482208269895193668033182528869398496465105820939239829488793320362509443117301238197068416140397019837679320683282376464804295311802328782509819455815301756717361332069811250996181881593041690351598888519345807273866738589422879228499892086805825749279610484198444363463244968487560233624827041978623209002160990235304369941849146314093431738143640546253152096183690888707016768396424378140592714563549061303107208510383750510115747704171898610687396965521267154688957035035402123407849819334321068170121005627880235193033224745015853904730419957777093503660416997329725088687696640355570716226844716256079882651787134195124665201030592123667719432527867539855894489697096409754591856956380236370162112047742722836489613422516445078182442352948636372141740238893441247963574370263755294448337998016125492278509257782562092622648326277933386566481627725164019105900491644998289315056604725802778631864155195653244258698294695930801915298721172556347546396447910145904090586298496791287406870504895858671747985466775757320568128845920541334053922000113786300945560688166740016984205580403363795376452030402432256613527836951177883863874439662532249850654995886234281899707733276171783928034946501434558897071942586398772754710962953741521115136835062752602326484728703920764310059584116612054529703023647254929666938115137322753645098889031360205724817658511806303644281231496550704751025446501172721155519486685080036853228183152196003735625279449515828418829478761085263981395599006737648292244375287184624578036192981971399147564488262603903381441823262515097482798777996437308997038886778227138360577297882412561190717663946507063304527954661855096666185664709711344474016070462621568071748187784437143698821855967095910259686200235371858874856965220005031173439207321139080329363447972735595527734907178379342163701205005451326383544000186323991490705479778056697853358048966906295119432473099587655236812859041383241160722602998330535370876138939639177957454016137223618789365260538155841587186925538606164779834025435128439612946035291332594279490433729908573158029095863138268329147711639633709240031689458636060645845925126994655724839186564209752685082307544254599376917041977780085362730941710163434907696423722294352366125572508814779223151974778060569672538017180776360346245927877846585065605078084421152969752189087401966090665180351650179250461950136658543663271254963990854914420001457476081930221206602433009641270489439039717719518069908699860663658323227870937650226014929101151717763594460202324930028040186772391028809786660565118326004368850881715723866984224220102495055188169480322100251542649463981287367765892768816359831247788652014117411091360116"
"2.718281828459045235360287471352662497757247093699959574966967627724076630353547594571382178525166427427466391932003059921817413596629043572900334295260595630738132328627943490763233829880753195251019011573834187930702154089149934884167509244761460668082264800168477411853742345442437107539077744992069551702761838606261331384583000752044933826560297606737113200709328709127443747047230696977209310141692836819025515108657463772111252389784425056953696770785449969967946864454905987931636889230098793127736178215424999229576351482208269895193668033182528869398496465105820939239829488793320362509443117301238197068416140397019837679320683282376464804295311802328782509819455815301756717361332069811250996181881593041690351598888519345807273866738589422879228499892086805825749279610484198444363463244968487560233624827041978623209002160990235304369941849146314093431738143640546253152096183690888707016768396424378140592714563549061303107208510383750510115747704171898610687396965521267154688957035035402123407849819334321068170121005627880235193033224745015853904730419957777093503660416997329725088687696640355570716226844716256079882651787134195124665201030592123667719432527867539855894489697096409754591856956380236370162112047742722836489613422516445078182442352948636372141740238893441247963574370263755294448337998016125492278509257782562092622648326277933386566481627725164019105900491644998289315056604725802778631864155195653244258698294695930801915298721172556347546396447910145904090586298496791287406870504895858671747985466775757320568128845920541334053922000113786300945560688166740016984205580403363795376452030402432256613527836951177883863874439662532249850654995886234281899707733276171783928034946501434558897071942586398772754710962953741521115136835062752602326484728703920764310059584116612054529703023647254929666938115137322753645098889031360205724817658511806303644281231496550704751025446501172721155519486685080036853228183152196003735625279449515828418829478761085263981"
"2.7182818284590452353602874713526624977572470936999595749669676277240766303535475945713821785251664274274663919320030599218174135966290435729003342952605956307381323286279434907632338298807531952510190115738341879307021540891499348841675092447614606680822648001684774118537423454424371075390777449920695517027618386062613313845830007520449338265602976067371132007093287091274437470472306969772093101416928368190255151086574637721112523897844250569536967707854499699679468644549059879316368892300987931277361782154249992295763514822082698951936680331825288693984964651058209392398294887933203625094431173012381970684161403970198376793206832823764648042953118023287825098194558153017567173613320698112509961818815930416903515988885193458072738667385894228792284998920868058257492796104841984443634632449684875602336248270419786232090021609902353043699418491463140934317381436405462531520961836908887070167683964243781405927145635490613031072085103837505101157477041718986106873969655212671546889570350354021234078498193343210681701210056278802351930332247450158539047304199577770935036604169973297250886876966403555707162268447162560798826517871341951246652010305921236677194325278675398558944896970964097545918569563802363701621120477427228364896134225164450781824423529486363721417402388934412479635743702637552944483379980161254922785092577825620926226483262779333865664816277251640191059004916449982893150566047258027786318641551956532442586982946959308019152987211725563475463964479101459040905862984967912874068705048958586717479854667757573205681288459205413340539220001137863009455606881667400169842055804033637953764520304024322566135278369511778838638744396625322498506549958862342818997077332761717839280349465014345588970719425863987727547109629537415211151368350627526023264847287039207643100595841166120545297030236472549296669381151373227536450988890313602057248176585118063036442812314965507047510254465011727211555194866850800368532281831521960037356252794495158284188294787610852639813955990067376482922443752871846245780361929819713991475644882626039033814418232625150974827987779964373089970388867782271383605772978824125611907176639465070633045279546618550966661856647097113444740160704626215680717481877844371436988218559670959102596862002353718588748569652200050311734392073211390803293634479727355955277349071783793421637012050054513263835440001863239914907054797780566978533580489669062951194324730995876552368128590413832411607226029983305353708761389396391779574540161372236187893652605381558415871869255386061647798340254351284396129460352913325942794904337299085731580290958631382683291477116396337092400316894586360606458459251269946557248391865642097526850823075442545993769170419777800853627309417101634349076964237222943523661255725088147792231519747780605696725380171807763603462459278778465850656050780844211529697521890874019660906651803516501792504619501366585436632712549639908549144200014574760819302212066024330096412704894390397177195180699086998606636583232278"
......@@ -4,5 +4,5 @@ include $(TOP)/mk/target.mk
FAST_OPTS = 8
NORM_OPTS = 8
NORM_OPTS = 9
SLOW_OPTS = 9
[a-j][a-j][a-j][0-9][k-z]0123456789abcdefghijklmnopqrstuvwxyz
Enter a generator: 6560000
\ No newline at end of file
[a-j][a-j][a-j][a-j][a-j][a-j][a-d]abcdefghijklmnopqrstuvwxyz
Enter a generator: 132000000
\ No newline at end of file
[a-j][a-j][a-j]abcdefghijklmnopqrstuvwxyz
[a-j][a-j][a-j][a-j][a-j][a-j][a-d][1-3]abcdefghijklmnopqrstuvwxy
Enter a generator: 29000
\ No newline at end of file
Enter a generator: 396000000
\ No newline at end of file
......@@ -6,6 +6,6 @@ SRC_RUNTEST_OPTS += +RTS -K20m -H100m -RTS
-include opts.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 5000
NORM_OPTS = 50000
SLOW_OPTS = 100000
FAST_OPTS = 100000
NORM_OPTS = 2000000
SLOW_OPTS = 5000000
......@@ -10,5 +10,5 @@ include $(TOP)/mk/target.mk
FAST_OPTS = 17
NORM_OPTS = 17
SLOW_OPTS = 19
NORM_OPTS = 20
SLOW_OPTS = 20
[1,1,1,2,4,8,17,39,89,211,507,1238,3057,7639,19241,48865,124906,321198]
[0,1,0,1,0,3,0,10,0,36,0,153,0,780,0,4005,0]
[1,0,1,1,3,2,9,8,35,39,159,202,802,1078,4347,6354,24894]
[1,1,1,2,3,5,9,18,35,75,159,355,802,1858,4347,10359,24894]
[1,1,1,2,4,8,17,39,89,211,507,1238,3057,7639,19241,48865,124906,321198,830219,2156010]
[0,1,0,1,0,3,0,10,0,36,0,153,0,780,0,4005,0,22366,0]
[1,0,1,1,3,2,9,8,35,39,159,202,802,1078,4347,6354,24894,38157,148284]
[1,1,1,2,3,5,9,18,35,75,159,355,802,1858,4347,10359,24894,60523,148284]
[1,1,1,2,4,8,17,39,89,211,507,1238,3057,7639,19241,48865,124906,321198]
[0,1,0,1,0,3,0,10,0,36,0,153,0,780,0,4005,0]
[1,0,1,1,3,2,9,8,35,39,159,202,802,1078,4347,6354,24894]
[1,1,1,2,3,5,9,18,35,75,159,355,802,1858,4347,10359,24894]
[1,1,1,2,4,8,17,39,89,211,507,1238,3057,7639,19241,48865,124906,321198,830219,2156010,5622109]
[0,1,0,1,0,3,0,10,0,36,0,153,0,780,0,4005,0,22366,0,128778]
[1,0,1,1,3,2,9,8,35,39,159,202,802,1078,4347,6354,24894,38157,148284,237541]
[1,1,1,2,3,5,9,18,35,75,159,355,802,1858,4347,10359,24894,60523,148284,366319]
......@@ -6,6 +6,6 @@ SRCS = Main.hs
include $(TOP)/mk/target.mk
FAST_OPTS = 1500
NORM_OPTS = 1500
SLOW_OPTS = 5500
FAST_OPTS = 1500
NORM_OPTS = 8000
SLOW_OPTS = 10000
......@@ -6,5 +6,5 @@ include $(TOP)/mk/target.mk
SRCS = Main.hs
FAST_OPTS = 10
NORM_OPTS = 10
SLOW_OPTS = 12
NORM_OPTS = 13
SLOW_OPTS = 13
......@@ -3,6 +3,6 @@ include $(TOP)/mk/boilerplate.mk
-include opts.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 30
NORM_OPTS = 30
SLOW_OPTS = 35
FAST_OPTS = 35
NORM_OPTS = 40
SLOW_OPTS = 40
......@@ -4,5 +4,5 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 27 16 8
NORM_OPTS = 24 16 8
NORM_OPTS = 33 17 8
SLOW_OPTS = 33 17 8
......@@ -4,5 +4,5 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 20000
NORM_OPTS = 100000
SLOW_OPTS = 230000
NORM_OPTS = 300000
SLOW_OPTS = 400000
......@@ -7,6 +7,6 @@ SRC_RUNTEST_OPTS += +RTS -M300m -RTS
include $(TOP)/mk/target.mk
FAST_OPTS = 8000
NORM_OPTS = 20000
SLOW_OPTS = 30000
FAST_OPTS = 8000
NORM_OPTS = 80000
SLOW_OPTS = 80000
......@@ -3,5 +3,5 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/target.mk
FAST_OPTS = 10000
NORM_OPTS = 10000
SLOW_OPTS = 80000
NORM_OPTS = 2000000
SLOW_OPTS = 2000000
TOP = ..
include $(TOP)/mk/boilerplate.mk
SUBDIRS = anna bspt cacheprof compress compress2 fem fluid fulsom gamteb gg \
SUBDIRS = anna bspt compress compress2 fem fluid fulsom gamteb gg \
grep hidden hpg infer lift linear maillist mkhprog parser pic prolog \
reptile rsa scs symalg veritas eff
#cacheprof causes very nondeterministic allocation
OTHER_SUBDIRS = cacheprof
include $(TOP)/mk/target.mk
TOP = ../..
include $(TOP)/mk/boilerplate.mk
STDIN_FILE = big.cor
# don't: -poscript ./anna.postscript
# This just sums the output to save including the entire output file
# in the repository, but 'sum' differs from machine to machine. --SDM
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
day ::= Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
Saturday |
Sunday ;
domain ::= Unit |
Lift (domain);
pair a b ::= Pair a b;
list a ::= Nil | Cons a (list a);
tree a ::= Leaf | Branch (tree a) a (tree a);
assoc a b ::= NilAssoc |
Assoc a b (assoc a b) ;
;;
z4 l1 l2
= case l1 of
Nil -> Nil;
Cons x xs -> case l2 of
Nil -> Nil;
Cons y ys -> Cons (x+y) (z4 xs ys)
end
end;
z6 l1 l2
= case l1 of
Nil -> Nil;
Cons x xs -> case l2 of
Nil -> Nil;
Cons y ys -> Cons (z4 x y) (z6 xs ys)
end
end;
z8 l1 l2
= case l1 of
Nil -> Nil;
Cons x xs -> case l2 of
Nil -> Nil;
Cons y ys -> Cons (z6 x y) (z8 xs ys)
end
end;
z10 l1 l2
= case l1 of
Nil -> Nil;
Cons x xs -> case l2 of
Nil -> Nil;
Cons y ys -> Cons (z8 x y) (z10 xs ys)
end
end;
f2 a b
= case a == 0 of
True -> b;
False -> f2 b a
end;
f3 a b c
= case a == 0 of
True -> b;
False -> f3 c b a
end;
f4 a b c d
= case a == 0 of
True -> b;
False -> f4 d c b a
end;
f5 a b c d e
= case a == 0 of
True -> b;
False -> f5 e d c b a
end;
f6 a b c d e f
= case a == 0 of
True -> b;
False -> f6 f e d c b a
end;
f7 a b c d e f g
= case a == 0 of
True -> b;
False -> f7 g f e d c b a
end;
p2 a b = a;
p3 a b c = a + c;
p4 a b c d = a + c;
p5 a b c d e = a + c + e;
p6 a b c d e f = a + c + e;
p7 a b c d e f g = a + c + e + g;
p8 a b c d e f g h = a + c + e + g;
p9 a b c d e f g h i = a + c + e + g + i;
p10 a b c d e f g h i j = a + c + e + g + i;
p11 a b c d e f g h i j k = a + c + e + g + i + k;
p12 a b c d e f g h i j k l = a + c + e + g + i + k;
s2 a b = a + b;
s4 a b c d = a + b + c + d;
s6 a b c d e f = a + b + c + d + e + f;
s8 a b c d e f g h = a + b + c + d + e + f + g + h;
s10 a b c d e f g h i j = a + b + c + d + e + f + g + h + i + j;
s12 a b c d e f g h i j k l = a + b + c + d + e + f + g + h + i + j + k + l;
l2 a b = 37;
l4 a b c d = 37;
l6 a b c d e f = 37;
l8 a b c d e f g h = 37;
l9 a b c d e f g h i = 37;
l10 a b c d e f g h i j = 37;
l12 a b c d e f g h i j k l = 37;
bottomAny = bottomAny;