diff --git a/reduce/report/nodes b/reduce/report/nodes new file mode 100644 index 0000000..73c7bb1 --- /dev/null +++ b/reduce/report/nodes @@ -0,0 +1,1081 @@ +n, reduce, fib, bin, binom +0, 0.000169, 0.000078, 0.000075, 0.000042 +0, 0.072879, 0.000070, 0.000078, 0.000047 +0, 0.000171, 0.000096, 0.000070, 0.000054 +0, 0.000380, 0.000168, 0.000136, 0.000094 +0, 0.000289, 0.000169, 0.000138, 0.000088 +0, 0.000275, 0.000146, 0.000130, 0.000091 +0, 0.000307, 0.000139, 0.000132, 0.000125 +0, 0.000242, 0.000130, 0.000119, 0.000077 +0, 0.000340, 0.000141, 0.000119, 0.000082 +0, 0.000187, 0.000100, 0.000090, 0.000048 +0, 0.000265, 0.000112, 0.000107, 0.000072 +0, 0.000282, 0.000142, 0.000197, 0.000088 +0, 0.073792, 0.000089, 0.000091, 0.000045 +0, 0.000315, 0.000135, 0.000160, 0.000104 +0, 0.029920, 0.019970, 0.020002, 0.001163 +0, 0.000279, 0.000146, 0.000126, 0.000091 +0, 0.000236, 0.000190, 0.000114, 0.000074 +0, 0.000291, 0.000161, 0.000135, 0.000134 +0, 0.000260, 0.000140, 0.000131, 0.000121 +0, 0.029804, 0.000097, 0.000067, 0.000047 +0, 0.000266, 0.000152, 0.000127, 0.000090 +0, 0.000325, 0.000068, 0.000071, 0.000042 +0, 0.000258, 0.000137, 0.000131, 0.000123 +0, 0.000256, 0.000136, 0.000148, 0.000096 +0, 0.000237, 0.000165, 0.000133, 0.000088 +0, 0.000181, 0.000133, 0.000128, 0.000103 +0, 0.000239, 0.000139, 0.000132, 0.000091 +0, 0.000217, 0.000143, 0.000132, 0.000089 +0, 0.000243, 0.000139, 0.000118, 0.000089 +0, 0.047661, 0.000097, 0.000070, 0.000075 +1, 0.000850, 0.009565, 0.001732, 0.000693 +1, 0.000865, 0.008027, 0.001731, 0.000695 +1, 0.000795, 0.002371, 0.001793, 0.000701 +1, 0.000936, 0.002281, 0.001735, 0.000694 +1, 0.010031, 0.001281, 0.001748, 0.000701 +1, 0.000073, 0.001141, 0.001840, 0.000691 +1, 0.020568, 0.008560, 0.001890, 0.000689 +1, 0.001009, 0.002393, 0.001766, 0.000694 +1, 0.000956, 0.002477, 0.001737, 0.000690 +1, 0.000060, 0.002345, 0.001716, 0.000700 +1, 0.000898, 0.011038, 0.001729, 0.000691 +1, 0.000742, 0.002562, 0.001859, 0.000685 +1, 0.020928, 0.002899, 0.001779, 0.000702 +1, 0.000935, 0.004087, 0.001759, 0.000712 +1, 0.000829, 0.018135, 0.001708, 0.000697 +1, 0.000935, 0.002418, 0.001747, 0.000675 +1, 0.000779, 0.002343, 0.001724, 0.000687 +1, 0.000883, 0.002440, 0.001762, 0.000697 +1, 0.000142, 0.002358, 0.001869, 0.000242 +1, 0.001068, 0.008501, 0.001765, 0.000685 +1, 0.000809, 0.002310, 0.001745, 0.000689 +1, 0.010034, 0.001339, 0.001871, 0.000694 +1, 0.000790, 0.002298, 0.001754, 0.000688 +1, 0.000879, 0.002459, 0.001762, 0.000690 +1, 0.000879, 0.013278, 0.001729, 0.000694 +1, 0.020608, 0.007419, 0.001767, 0.000693 +1, 0.000757, 0.002277, 0.001750, 0.000685 +1, 0.000853, 0.013834, 0.001766, 0.000687 +1, 0.000895, 0.002298, 0.001744, 0.000691 +1, 0.010022, 0.000090, 0.000071, 0.000029 +2, 0.004209, 0.002736, 0.001680, 0.000966 +2, 0.003595, 0.002768, 0.001637, 0.000987 +2, 0.011111, 0.002699, 0.001684, 0.000984 +2, 0.007707, 0.001627, 0.001633, 0.000966 +2, 0.003639, 0.002797, 0.001622, 0.000990 +2, 0.005356, 0.002772, 0.001581, 0.000977 +2, 0.003748, 0.002721, 0.001692, 0.000974 +2, 0.015269, 0.002746, 0.001758, 0.000965 +2, 0.003591, 0.002882, 0.001689, 0.000966 +2, 0.004227, 0.002718, 0.001593, 0.000965 +2, 0.004551, 0.002754, 0.001715, 0.000964 +2, 0.005705, 0.002690, 0.001738, 0.000967 +2, 0.004336, 0.026712, 0.001615, 0.000988 +2, 0.014714, 0.002893, 0.001619, 0.000965 +2, 0.003509, 0.018718, 0.003562, 0.000968 +2, 0.005425, 0.020818, 0.001639, 0.000984 +2, 0.004109, 0.002856, 0.001703, 0.000962 +2, 0.004239, 0.002763, 0.001776, 0.000966 +2, 0.005391, 0.002689, 0.001653, 0.001003 +2, 0.023457, 0.002991, 0.001590, 0.000966 +2, 0.003579, 0.002722, 0.001617, 0.000986 +2, 0.010783, 0.014215, 0.001733, 0.000969 +2, 0.003580, 0.002817, 0.001733, 0.000961 +2, 0.009744, 0.002791, 0.001670, 0.000961 +2, 0.004267, 0.002946, 0.001624, 0.000968 +2, 0.004410, 0.002822, 0.001602, 0.000956 +2, 0.004037, 0.002680, 0.001604, 0.000960 +2, 0.003781, 0.002729, 0.011448, 0.000962 +2, 0.004812, 0.002748, 0.001609, 0.000959 +2, 0.011354, 0.002666, 0.001625, 0.000957 +3, 0.001062, 0.002987, 0.002535, 0.001093 +3, 0.000977, 0.003043, 0.002561, 0.001095 +3, 0.019618, 0.010835, 0.002508, 0.001094 +3, 0.009966, 0.016448, 0.002490, 0.001095 +3, 0.001163, 0.003102, 0.002564, 0.001093 +3, 0.001145, 0.011579, 0.001552, 0.001091 +3, 0.001703, 0.002980, 0.002538, 0.001092 +3, 0.010957, 0.002961, 0.002528, 0.001095 +3, 0.019978, 0.001949, 0.002560, 0.001089 +3, 0.010020, 0.001904, 0.002622, 0.001088 +3, 0.009766, 0.010345, 0.002557, 0.001088 +3, 0.002168, 0.003509, 0.002530, 0.001095 +3, 0.003205, 0.002923, 0.002515, 0.001089 +3, 0.017890, 0.003111, 0.002641, 0.001088 +3, 0.001132, 0.004858, 0.002552, 0.001103 +3, 0.001140, 0.002980, 0.012611, 0.001103 +3, 0.011197, 0.007956, 0.002525, 0.001086 +3, 0.001066, 0.003021, 0.002581, 0.001088 +3, 0.001157, 0.003061, 0.002574, 0.001085 +3, 0.001363, 0.015538, 0.002493, 0.001087 +3, 0.001244, 0.002999, 0.002602, 0.000715 +3, 0.001786, 0.003216, 0.002506, 0.001096 +3, 0.001222, 0.009603, 0.002501, 0.001086 +3, 0.001068, 0.006080, 0.002562, 0.001084 +3, 0.001391, 0.003029, 0.002521, 0.001083 +3, 0.004007, 0.002915, 0.002587, 0.001083 +3, 0.001154, 0.003021, 0.002622, 0.001096 +3, 0.001026, 0.002976, 0.002525, 0.001079 +3, 0.012944, 0.003008, 0.002591, 0.001093 +3, 0.001080, 0.003206, 0.002530, 0.001079 +4, 0.010453, 0.006839, 0.002563, 0.001153 +4, 0.015272, 0.003838, 0.002649, 0.001150 +4, 0.004758, 0.003970, 0.002475, 0.001152 +4, 0.004403, 0.003897, 0.002472, 0.001154 +4, 0.004273, 0.003863, 0.002499, 0.001154 +4, 0.006909, 0.003736, 0.002682, 0.001154 +4, 0.004719, 0.004132, 0.002721, 0.001152 +4, 0.004311, 0.003826, 0.002496, 0.001154 +4, 0.005799, 0.003839, 0.002491, 0.001153 +4, 0.004664, 0.003960, 0.002500, 0.001151 +4, 0.011773, 0.003849, 0.002465, 0.001152 +4, 0.010999, 0.004736, 0.002531, 0.001154 +4, 0.004670, 0.003818, 0.002542, 0.001153 +4, 0.004479, 0.004029, 0.002491, 0.001170 +4, 0.011502, 0.015359, 0.002528, 0.001158 +4, 0.004504, 0.003998, 0.002558, 0.001173 +4, 0.008975, 0.010892, 0.002545, 0.001152 +4, 0.004341, 0.003883, 0.002500, 0.001152 +4, 0.004754, 0.003904, 0.002596, 0.001193 +4, 0.013496, 0.003823, 0.002657, 0.001151 +4, 0.012072, 0.003943, 0.002540, 0.001157 +4, 0.010501, 0.019230, 0.021398, 0.005864 +4, 0.013561, 0.003884, 0.002549, 0.001151 +4, 0.005552, 0.021406, 0.002653, 0.001150 +4, 0.015313, 0.004068, 0.002498, 0.001153 +4, 0.014216, 0.003921, 0.002574, 0.001151 +4, 0.007347, 0.003937, 0.002672, 0.001154 +4, 0.010535, 0.007876, 0.002548, 0.001164 +4, 0.004950, 0.003871, 0.002663, 0.001152 +4, 0.006995, 0.003943, 0.002539, 0.001155 +5, 0.014129, 0.004340, 0.002762, 0.001357 +5, 0.005759, 0.004555, 0.002779, 0.001357 +5, 0.006231, 0.004505, 0.002836, 0.001356 +5, 0.012427, 0.015501, 0.002815, 0.001381 +5, 0.005461, 0.029531, 0.002951, 0.001371 +5, 0.008826, 0.030395, 0.018605, 0.009304 +5, 0.008370, 0.004377, 0.002992, 0.001359 +5, 0.012805, 0.030525, 0.002802, 0.001385 +5, 0.005653, 0.004244, 0.002788, 0.001359 +5, 0.013550, 0.004250, 0.003000, 0.001355 +5, 0.010520, 0.004451, 0.002855, 0.001362 +5, 0.013540, 0.020114, 0.002862, 0.001373 +5, 0.016260, 0.004511, 0.002917, 0.001354 +5, 0.002191, 0.004347, 0.002826, 0.001356 +5, 0.005220, 0.004401, 0.002941, 0.001356 +5, 0.005033, 0.004298, 0.002829, 0.001357 +5, 0.008831, 0.014425, 0.002828, 0.001389 +5, 0.006579, 0.004457, 0.002979, 0.001356 +5, 0.006806, 0.004466, 0.002894, 0.001357 +5, 0.010054, 0.004936, 0.002792, 0.001361 +5, 0.006181, 0.004677, 0.002810, 0.001358 +5, 0.004798, 0.004336, 0.002813, 0.001355 +5, 0.009957, 0.004497, 0.002838, 0.001390 +5, 0.005999, 0.008775, 0.002850, 0.001399 +5, 0.005404, 0.009080, 0.007354, 0.001362 +5, 0.006051, 0.004264, 0.002697, 0.001353 +5, 0.012168, 0.004277, 0.004992, 0.003138 +5, 0.006398, 0.006480, 0.002805, 0.001360 +5, 0.006247, 0.004277, 0.002822, 0.001353 +5, 0.007372, 0.004434, 0.002834, 0.001351 +6, 0.009006, 0.004903, 0.002807, 0.001346 +6, 0.012996, 0.011174, 0.010568, 0.001353 +6, 0.014068, 0.004974, 0.002965, 0.001347 +6, 0.004581, 0.004821, 0.002898, 0.001346 +6, 0.004077, 0.010665, 0.002678, 0.001371 +6, 0.011969, 0.004847, 0.002816, 0.001346 +6, 0.015782, 0.004970, 0.002872, 0.001348 +6, 0.003696, 0.004682, 0.002631, 0.001349 +6, 0.005783, 0.003785, 0.002787, 0.001253 +6, 0.003814, 0.004775, 0.002851, 0.001345 +6, 0.009901, 0.004875, 0.002801, 0.001347 +6, 0.006556, 0.004854, 0.002923, 0.001355 +6, 0.013273, 0.004920, 0.002698, 0.001346 +6, 0.006312, 0.004844, 0.002808, 0.001362 +6, 0.006364, 0.004852, 0.002796, 0.001345 +6, 0.004856, 0.004971, 0.002848, 0.001345 +6, 0.006184, 0.004928, 0.002905, 0.001366 +6, 0.012699, 0.004998, 0.002837, 0.001344 +6, 0.008080, 0.004910, 0.002794, 0.001346 +6, 0.004059, 0.004800, 0.002705, 0.001342 +6, 0.005265, 0.004890, 0.002789, 0.001342 +6, 0.003716, 0.004871, 0.002766, 0.001350 +6, 0.015665, 0.010790, 0.002811, 0.001340 +6, 0.011156, 0.004874, 0.002952, 0.001340 +6, 0.016896, 0.005059, 0.002818, 0.001340 +6, 0.013870, 0.005055, 0.002920, 0.001342 +6, 0.010489, 0.005160, 0.002842, 0.001339 +6, 0.020467, 0.004876, 0.002912, 0.001339 +6, 0.004266, 0.004833, 0.002798, 0.001340 +6, 0.016598, 0.004965, 0.002794, 0.001339 +7, 0.001905, 0.006247, 0.004580, 0.001333 +7, 0.011222, 0.006214, 0.004828, 0.001352 +7, 0.001345, 0.006124, 0.004397, 0.001330 +7, 0.002280, 0.006250, 0.004500, 0.001332 +7, 0.014579, 0.011927, 0.004327, 0.001337 +7, 0.009907, 0.013745, 0.004324, 0.001327 +7, 0.001825, 0.006777, 0.004510, 0.001332 +7, 0.020817, 0.008659, 0.003575, 0.001330 +7, 0.001281, 0.006377, 0.004461, 0.001336 +7, 0.016469, 0.006423, 0.004390, 0.001327 +7, 0.001955, 0.006190, 0.004429, 0.001329 +7, 0.011222, 0.006552, 0.004403, 0.001327 +7, 0.002072, 0.019661, 0.004468, 0.001325 +7, 0.008724, 0.006031, 0.004889, 0.001331 +7, 0.001912, 0.006178, 0.007182, 0.001326 +7, 0.001324, 0.006842, 0.004475, 0.001330 +7, 0.021262, 0.005217, 0.004353, 0.001324 +7, 0.002383, 0.006138, 0.004401, 0.001324 +7, 0.006625, 0.006289, 0.004339, 0.001326 +7, 0.003577, 0.006228, 0.004414, 0.001323 +7, 0.001190, 0.006361, 0.004388, 0.001325 +7, 0.001335, 0.006063, 0.004375, 0.001326 +7, 0.008347, 0.006107, 0.004361, 0.001323 +7, 0.003155, 0.006808, 0.004449, 0.001324 +7, 0.002509, 0.006155, 0.004418, 0.001409 +7, 0.001260, 0.006156, 0.004355, 0.001322 +7, 0.002005, 0.007486, 0.004417, 0.001320 +7, 0.010141, 0.003155, 0.004463, 0.001318 +7, 0.001600, 0.006124, 0.004330, 0.001317 +7, 0.008355, 0.006476, 0.004461, 0.001320 +8, 0.007415, 0.005681, 0.004890, 0.001326 +8, 0.009646, 0.005821, 0.004323, 0.001328 +8, 0.007658, 0.005834, 0.004182, 0.001326 +8, 0.006165, 0.005642, 0.004221, 0.001326 +8, 0.010198, 0.005677, 0.004282, 0.001323 +8, 0.007786, 0.009563, 0.004184, 0.001333 +8, 0.005146, 0.010754, 0.011190, 0.001333 +8, 0.018441, 0.010506, 0.004317, 0.001325 +8, 0.011838, 0.005677, 0.004274, 0.001321 +8, 0.010386, 0.005716, 0.004197, 0.001325 +8, 0.006035, 0.005681, 0.004276, 0.001320 +8, 0.009024, 0.005746, 0.004129, 0.001318 +8, 0.006030, 0.005842, 0.004273, 0.001318 +8, 0.006361, 0.006188, 0.004204, 0.001320 +8, 0.012429, 0.011056, 0.004166, 0.001330 +8, 0.022093, 0.014321, 0.002721, 0.001152 +8, 0.013073, 0.006370, 0.004116, 0.001320 +8, 0.014414, 0.005607, 0.004172, 0.001330 +8, 0.012078, 0.010753, 0.004227, 0.001322 +8, 0.010234, 0.005714, 0.004202, 0.001316 +8, 0.014142, 0.005734, 0.004163, 0.001315 +8, 0.012722, 0.014418, 0.004309, 0.001317 +8, 0.018535, 0.005607, 0.004183, 0.001311 +8, 0.015876, 0.005693, 0.004271, 0.001311 +8, 0.014924, 0.005838, 0.004273, 0.001312 +8, 0.008738, 0.005757, 0.004191, 0.001312 +8, 0.012734, 0.005945, 0.004257, 0.001311 +8, 0.008733, 0.005761, 0.004144, 0.001307 +8, 0.014147, 0.005784, 0.004148, 0.001307 +8, 0.010691, 0.005639, 0.004296, 0.001307 +9, 0.007469, 0.010565, 0.004479, 0.001324 +9, 0.016930, 0.005689, 0.004426, 0.001315 +9, 0.018413, 0.008852, 0.004433, 0.001312 +9, 0.007160, 0.006293, 0.004365, 0.001310 +9, 0.008082, 0.005746, 0.004454, 0.001308 +9, 0.022949, 0.005729, 0.004388, 0.001310 +9, 0.007147, 0.010717, 0.009306, 0.001309 +9, 0.006443, 0.032414, 0.004434, 0.001307 +9, 0.006032, 0.005700, 0.004396, 0.001306 +9, 0.019011, 0.005830, 0.015306, 0.010676 +9, 0.005570, 0.005663, 0.004462, 0.001336 +9, 0.009227, 0.015304, 0.004433, 0.001307 +9, 0.014856, 0.005867, 0.004460, 0.001305 +9, 0.008190, 0.005750, 0.004450, 0.001299 +9, 0.014966, 0.005698, 0.004519, 0.001303 +9, 0.013982, 0.005647, 0.004486, 0.001307 +9, 0.006140, 0.005750, 0.004569, 0.001301 +9, 0.006163, 0.005609, 0.004454, 0.001296 +9, 0.006279, 0.005835, 0.007783, 0.001297 +9, 0.011157, 0.009407, 0.004441, 0.001296 +9, 0.011694, 0.005793, 0.004426, 0.001296 +9, 0.010609, 0.008302, 0.004485, 0.001296 +9, 0.017633, 0.015550, 0.004414, 0.001299 +9, 0.012909, 0.007266, 0.004505, 0.001295 +9, 0.012472, 0.005681, 0.004404, 0.001295 +9, 0.012859, 0.032854, 0.004526, 0.001305 +9, 0.007879, 0.013380, 0.004487, 0.001293 +9, 0.015706, 0.005830, 0.004554, 0.001293 +9, 0.014444, 0.005681, 0.004476, 0.001291 +9, 0.008682, 0.005746, 0.004514, 0.001288 +10, 0.005495, 0.005651, 0.011560, 0.001285 +10, 0.008433, 0.011999, 0.009658, 0.010701 +10, 0.009775, 0.005673, 0.004179, 0.001279 +10, 0.016769, 0.005849, 0.004131, 0.001283 +10, 0.008772, 0.005698, 0.004212, 0.001282 +10, 0.010326, 0.005631, 0.004207, 0.001284 +10, 0.008412, 0.007778, 0.004142, 0.001279 +10, 0.004425, 0.005608, 0.004224, 0.001277 +10, 0.007802, 0.005637, 0.004215, 0.001277 +10, 0.010895, 0.005690, 0.004219, 0.001276 +10, 0.009323, 0.005712, 0.004228, 0.001275 +10, 0.009921, 0.005663, 0.004109, 0.001273 +10, 0.017060, 0.005638, 0.004167, 0.001276 +10, 0.011137, 0.005688, 0.004266, 0.001273 +10, 0.014499, 0.005633, 0.004183, 0.001273 +10, 0.005650, 0.012005, 0.008713, 0.001273 +10, 0.020524, 0.005699, 0.004206, 0.001297 +10, 0.006429, 0.005627, 0.004302, 0.001269 +10, 0.020221, 0.005533, 0.004279, 0.001269 +10, 0.011551, 0.007396, 0.004220, 0.001263 +10, 0.007767, 0.006707, 0.004233, 0.001264 +10, 0.007428, 0.005763, 0.004189, 0.001269 +10, 0.007294, 0.005786, 0.004235, 0.001265 +10, 0.016954, 0.007605, 0.004209, 0.001272 +10, 0.017674, 0.005798, 0.004268, 0.001263 +10, 0.005493, 0.005476, 0.004154, 0.001264 +10, 0.006199, 0.007822, 0.007096, 0.001262 +10, 0.004739, 0.005723, 0.004154, 0.001263 +10, 0.010627, 0.004642, 0.004160, 0.001257 +10, 0.006482, 0.005595, 0.004219, 0.001263 +11, 0.016980, 0.005670, 0.004596, 0.001264 +11, 0.008145, 0.009652, 0.004468, 0.001266 +11, 0.005421, 0.005772, 0.004523, 0.001268 +11, 0.006886, 0.009574, 0.004681, 0.001264 +11, 0.005649, 0.005637, 0.004438, 0.001254 +11, 0.007428, 0.005623, 0.004475, 0.001257 +11, 0.008826, 0.023581, 0.004522, 0.001228 +11, 0.009533, 0.007537, 0.004515, 0.001254 +11, 0.022121, 0.020001, 0.000096, 0.000050 +11, 0.014498, 0.005757, 0.004548, 0.001258 +11, 0.019983, 0.005655, 0.004512, 0.001255 +11, 0.008431, 0.005638, 0.004702, 0.001251 +11, 0.008004, 0.005768, 0.004496, 0.001255 +11, 0.008935, 0.005783, 0.004477, 0.001250 +11, 0.006818, 0.012683, 0.004527, 0.001262 +11, 0.011278, 0.015976, 0.004779, 0.001252 +11, 0.006166, 0.005710, 0.008114, 0.005695 +11, 0.013510, 0.012653, 0.004428, 0.001249 +11, 0.007583, 0.005899, 0.004641, 0.001248 +11, 0.012979, 0.010099, 0.028624, 0.000065 +11, 0.007707, 0.005682, 0.004447, 0.001272 +11, 0.006325, 0.005753, 0.004365, 0.001247 +11, 0.008308, 0.005820, 0.004484, 0.001242 +11, 0.012682, 0.005609, 0.004483, 0.001193 +11, 0.007807, 0.005667, 0.004479, 0.001241 +11, 0.006482, 0.006658, 0.005899, 0.001248 +11, 0.006678, 0.013908, 0.004555, 0.001239 +11, 0.008286, 0.005822, 0.004539, 0.001262 +11, 0.011788, 0.011048, 0.004518, 0.001238 +11, 0.009185, 0.005733, 0.004440, 0.001227 +12, 0.018592, 0.006229, 0.004492, 0.001234 +12, 0.007277, 0.006175, 0.004486, 0.001232 +12, 0.012266, 0.005920, 0.004620, 0.001233 +12, 0.006737, 0.005931, 0.004486, 0.001232 +12, 0.007978, 0.006168, 0.004435, 0.001233 +12, 0.015112, 0.006147, 0.004508, 0.001234 +12, 0.017127, 0.006022, 0.004572, 0.001228 +12, 0.005311, 0.010098, 0.006872, 0.004230 +12, 0.006809, 0.006048, 0.004608, 0.001235 +12, 0.016664, 0.005995, 0.004506, 0.001227 +12, 0.025182, 0.006027, 0.004512, 0.001227 +12, 0.017702, 0.006284, 0.004572, 0.001235 +12, 0.018407, 0.006250, 0.004615, 0.001228 +12, 0.013540, 0.006054, 0.004497, 0.001225 +12, 0.007366, 0.006089, 0.004471, 0.001226 +12, 0.005814, 0.006130, 0.004490, 0.001222 +12, 0.009690, 0.013591, 0.004522, 0.001221 +12, 0.005777, 0.006192, 0.006363, 0.001223 +12, 0.009403, 0.004826, 0.004613, 0.001220 +12, 0.012661, 0.006186, 0.004458, 0.001219 +12, 0.012193, 0.006032, 0.004460, 0.001216 +12, 0.007292, 0.016634, 0.013400, 0.005027 +12, 0.007606, 0.005992, 0.004618, 0.001214 +12, 0.015551, 0.006026, 0.004643, 0.001217 +12, 0.008150, 0.005950, 0.004565, 0.001214 +12, 0.009742, 0.006110, 0.004581, 0.001214 +12, 0.006461, 0.005855, 0.004610, 0.001215 +12, 0.009202, 0.006046, 0.004629, 0.001214 +12, 0.015342, 0.027725, 0.005822, 0.001213 +12, 0.006923, 0.006056, 0.004522, 0.001209 +13, 0.007056, 0.007793, 0.004261, 0.001206 +13, 0.007211, 0.006720, 0.004207, 0.001209 +13, 0.016995, 0.006784, 0.008777, 0.001213 +13, 0.018345, 0.006896, 0.004161, 0.001206 +13, 0.026400, 0.014554, 0.004170, 0.001211 +13, 0.012101, 0.023153, 0.004170, 0.001223 +13, 0.014885, 0.005787, 0.004302, 0.001202 +13, 0.006401, 0.006753, 0.011410, 0.001205 +13, 0.005802, 0.006682, 0.004118, 0.001203 +13, 0.010234, 0.004399, 0.003251, 0.001219 +13, 0.011575, 0.006653, 0.004209, 0.001200 +13, 0.017632, 0.013186, 0.004213, 0.001219 +13, 0.009170, 0.007442, 0.004200, 0.001200 +13, 0.010757, 0.006686, 0.004119, 0.001195 +13, 0.013572, 0.007028, 0.004306, 0.001206 +13, 0.007863, 0.000099, 0.002933, 0.001199 +13, 0.009328, 0.013688, 0.004088, 0.001193 +13, 0.012988, 0.009030, 0.004157, 0.001196 +13, 0.004424, 0.006695, 0.004124, 0.001175 +13, 0.009936, 0.007248, 0.004166, 0.001192 +13, 0.009528, 0.006722, 0.004278, 0.001189 +13, 0.016603, 0.010725, 0.012605, 0.001188 +13, 0.035399, 0.008573, 0.004140, 0.001190 +13, 0.019080, 0.011179, 0.004237, 0.001188 +13, 0.008617, 0.005461, 0.004248, 0.001186 +13, 0.013536, 0.008511, 0.004145, 0.001185 +13, 0.015536, 0.006698, 0.004153, 0.001187 +13, 0.020613, 0.006687, 0.004137, 0.001183 +13, 0.022175, 0.007376, 0.004166, 0.001182 +13, 0.008719, 0.011814, 0.005977, 0.001184 +14, 0.011405, 0.007068, 0.004394, 0.001221 +14, 0.008533, 0.007176, 0.004485, 0.001219 +14, 0.015554, 0.013701, 0.004386, 0.001221 +14, 0.016095, 0.010138, 0.004291, 0.001250 +14, 0.009083, 0.011019, 0.004584, 0.001224 +14, 0.019928, 0.007103, 0.004506, 0.001224 +14, 0.017561, 0.007462, 0.004417, 0.001223 +14, 0.015291, 0.007020, 0.011271, 0.009790 +14, 0.012703, 0.016672, 0.010189, 0.006961 +14, 0.005865, 0.020306, 0.004460, 0.001230 +14, 0.013483, 0.007015, 0.004381, 0.001224 +14, 0.017428, 0.008830, 0.004488, 0.001223 +14, 0.008843, 0.007098, 0.004408, 0.001222 +14, 0.009984, 0.021754, 0.003213, 0.001220 +14, 0.016217, 0.007079, 0.004437, 0.001221 +14, 0.008272, 0.013509, 0.004436, 0.001268 +14, 0.006752, 0.007050, 0.004419, 0.001223 +14, 0.015996, 0.006942, 0.004550, 0.001218 +14, 0.007180, 0.006988, 0.008879, 0.001221 +14, 0.009456, 0.006917, 0.004571, 0.001223 +14, 0.006255, 0.007214, 0.004429, 0.001204 +14, 0.012402, 0.007163, 0.004595, 0.001222 +14, 0.012298, 0.007127, 0.004495, 0.001218 +14, 0.012706, 0.029261, 0.004598, 0.001219 +14, 0.009982, 0.007042, 0.004572, 0.001220 +14, 0.005619, 0.013119, 0.004378, 0.001224 +14, 0.005689, 0.007017, 0.004468, 0.001226 +14, 0.012466, 0.007203, 0.004467, 0.001219 +14, 0.015424, 0.018148, 0.004443, 0.001218 +14, 0.010226, 0.013512, 0.004461, 0.001220 +15, 0.012327, 0.007704, 0.005649, 0.001249 +15, 0.007281, 0.007795, 0.005605, 0.001248 +15, 0.001383, 0.007778, 0.005445, 0.001242 +15, 0.009148, 0.009404, 0.006268, 0.001242 +15, 0.021482, 0.013591, 0.005870, 0.001246 +15, 0.008115, 0.034067, 0.015210, 0.001267 +15, 0.019674, 0.007296, 0.005488, 0.001243 +15, 0.013234, 0.012186, 0.005470, 0.001256 +15, 0.011281, 0.009129, 0.005485, 0.001242 +15, 0.001392, 0.007673, 0.005405, 0.001245 +15, 0.014923, 0.007684, 0.005461, 0.001248 +15, 0.007412, 0.008046, 0.005441, 0.001242 +15, 0.016776, 0.007697, 0.005514, 0.001259 +15, 0.017941, 0.007685, 0.005408, 0.001241 +15, 0.005726, 0.010088, 0.005505, 0.001240 +15, 0.012188, 0.007734, 0.005483, 0.001242 +15, 0.010831, 0.007696, 0.005385, 0.001244 +15, 0.007490, 0.007642, 0.005578, 0.001242 +15, 0.008720, 0.012787, 0.005453, 0.001259 +15, 0.014563, 0.009830, 0.005516, 0.001241 +15, 0.007430, 0.010341, 0.005516, 0.001241 +15, 0.017677, 0.006830, 0.005466, 0.001240 +15, 0.006192, 0.007787, 0.005402, 0.001255 +15, 0.014837, 0.010335, 0.005585, 0.001239 +15, 0.010639, 0.007410, 0.005380, 0.001239 +15, 0.001258, 0.000123, 0.005629, 0.001241 +15, 0.001524, 0.012562, 0.011088, 0.001257 +15, 0.001616, 0.011834, 0.005451, 0.001245 +15, 0.006866, 0.012658, 0.005520, 0.001242 +15, 0.007878, 0.012816, 0.005476, 0.001240 +16, 0.000065, 0.003427, 0.005074, 0.001267 +16, 0.014574, 0.003294, 0.003983, 0.001259 +16, 0.011181, 0.009449, 0.005124, 0.001255 +16, 0.014020, 0.014926, 0.012333, 0.007850 +16, 0.007371, 0.007065, 0.005118, 0.001321 +16, 0.006995, 0.007079, 0.006753, 0.001273 +16, 0.014411, 0.017354, 0.005067, 0.001266 +16, 0.016782, 0.016550, 0.005242, 0.001255 +16, 0.011640, 0.010282, 0.028949, 0.001261 +16, 0.010894, 0.006905, 0.005104, 0.001261 +16, 0.007715, 0.006995, 0.005112, 0.001251 +16, 0.015758, 0.006823, 0.005242, 0.001258 +16, 0.013104, 0.006953, 0.005170, 0.001257 +16, 0.007337, 0.007321, 0.005110, 0.001253 +16, 0.007048, 0.006986, 0.005232, 0.001262 +16, 0.006990, 0.007017, 0.005236, 0.001250 +16, 0.011209, 0.006895, 0.005285, 0.001271 +16, 0.008720, 0.007151, 0.005191, 0.001264 +16, 0.016726, 0.009415, 0.005235, 0.001265 +16, 0.020904, 0.007932, 0.005206, 0.001271 +16, 0.007828, 0.006982, 0.005133, 0.001256 +16, 0.010724, 0.008062, 0.005249, 0.001257 +16, 0.014361, 0.011806, 0.005049, 0.001257 +16, 0.006955, 0.006917, 0.005132, 0.001251 +16, 0.023918, 0.006927, 0.005300, 0.001259 +16, 0.007031, 0.011017, 0.005121, 0.001256 +16, 0.018243, 0.007002, 0.005171, 0.001256 +16, 0.017961, 0.015345, 0.005139, 0.001245 +16, 0.007373, 0.007144, 0.005154, 0.001247 +16, 0.008230, 0.011805, 0.005243, 0.001255 +17, 0.008591, 0.006898, 0.005065, 0.001266 +17, 0.009914, 0.006934, 0.005268, 0.001263 +17, 0.009868, 0.013432, 0.011510, 0.001256 +17, 0.015763, 0.007561, 0.005083, 0.001242 +17, 0.005919, 0.006885, 0.004952, 0.001244 +17, 0.008459, 0.018466, 0.005045, 0.001270 +17, 0.014663, 0.007658, 0.004942, 0.001279 +17, 0.010017, 0.006903, 0.005133, 0.001261 +17, 0.016273, 0.008238, 0.004967, 0.001240 +17, 0.006344, 0.015861, 0.005021, 0.001245 +17, 0.011156, 0.006845, 0.006398, 0.001263 +17, 0.016388, 0.007033, 0.004943, 0.001250 +17, 0.007528, 0.006935, 0.005046, 0.001256 +17, 0.010575, 0.008055, 0.006032, 0.001240 +17, 0.008979, 0.006927, 0.005032, 0.001240 +17, 0.016163, 0.012008, 0.005128, 0.001257 +17, 0.010988, 0.008408, 0.005049, 0.001248 +17, 0.013899, 0.008520, 0.004997, 0.001243 +17, 0.008446, 0.005557, 0.004935, 0.001247 +17, 0.007586, 0.006853, 0.005092, 0.001248 +17, 0.013786, 0.007003, 0.005036, 0.001241 +17, 0.007303, 0.006832, 0.004942, 0.001263 +17, 0.008361, 0.006857, 0.005031, 0.001284 +17, 0.010052, 0.000106, 0.010093, 0.000049 +17, 0.008627, 0.007023, 0.005088, 0.001246 +17, 0.010926, 0.006878, 0.005077, 0.001245 +17, 0.005776, 0.010467, 0.004995, 0.008366 +17, 0.006090, 0.014039, 0.005053, 0.001235 +17, 0.016602, 0.006748, 0.010523, 0.001237 +17, 0.012045, 0.006851, 0.005004, 0.001231 +18, 0.014743, 0.009328, 0.005637, 0.001263 +18, 0.015455, 0.007313, 0.005228, 0.001246 +18, 0.014297, 0.007285, 0.005276, 0.001255 +18, 0.014340, 0.009509, 0.005205, 0.001258 +18, 0.010439, 0.007463, 0.005149, 0.001248 +18, 0.008037, 0.007406, 0.005199, 0.001246 +18, 0.009847, 0.007447, 0.005169, 0.001240 +18, 0.011186, 0.025559, 0.028631, 0.019615 +18, 0.006638, 0.007518, 0.009986, 0.001253 +18, 0.009306, 0.007428, 0.005283, 0.001244 +18, 0.013740, 0.007539, 0.005096, 0.001247 +18, 0.014140, 0.018227, 0.017168, 0.001232 +18, 0.014356, 0.011437, 0.005180, 0.001236 +18, 0.013649, 0.007359, 0.005219, 0.001237 +18, 0.007638, 0.007431, 0.005009, 0.001232 +18, 0.009468, 0.007413, 0.005327, 0.001240 +18, 0.013472, 0.007599, 0.005319, 0.001245 +18, 0.012165, 0.019128, 0.005177, 0.001237 +18, 0.007326, 0.020021, 0.007606, 0.000097 +18, 0.007698, 0.007434, 0.005311, 0.001232 +18, 0.016999, 0.007589, 0.005094, 0.001244 +18, 0.007061, 0.010987, 0.005539, 0.001231 +18, 0.009520, 0.013274, 0.005144, 0.001232 +18, 0.011040, 0.010792, 0.005133, 0.001237 +18, 0.009469, 0.018476, 0.008570, 0.001257 +18, 0.014882, 0.007335, 0.005162, 0.001229 +18, 0.009811, 0.007464, 0.005141, 0.001232 +18, 0.015047, 0.007215, 0.005163, 0.001257 +18, 0.009319, 0.008394, 0.010943, 0.001280 +18, 0.005845, 0.008186, 0.005076, 0.001233 +19, 0.011365, 0.009628, 0.005158, 0.001260 +19, 0.009419, 0.007299, 0.005434, 0.001230 +19, 0.008111, 0.013657, 0.020740, 0.001236 +19, 0.007327, 0.007340, 0.005157, 0.001244 +19, 0.013885, 0.007553, 0.005326, 0.001235 +19, 0.023767, 0.014811, 0.006492, 0.001263 +19, 0.023349, 0.007357, 0.005084, 0.001266 +19, 0.015106, 0.012066, 0.005243, 0.001250 +19, 0.014536, 0.013214, 0.019970, 0.001230 +19, 0.008954, 0.007227, 0.005202, 0.001228 +19, 0.010449, 0.007102, 0.005234, 0.001248 +19, 0.018339, 0.007379, 0.005444, 0.001247 +19, 0.013283, 0.009226, 0.005053, 0.001248 +19, 0.016236, 0.011179, 0.005450, 0.001241 +19, 0.016897, 0.007159, 0.005294, 0.001246 +19, 0.016293, 0.015498, 0.005062, 0.001243 +19, 0.011345, 0.007080, 0.005485, 0.001252 +19, 0.011670, 0.010869, 0.008138, 0.001246 +19, 0.014429, 0.007199, 0.005321, 0.001225 +19, 0.014219, 0.007156, 0.005175, 0.001259 +19, 0.009588, 0.007088, 0.005105, 0.001241 +19, 0.009560, 0.007129, 0.005208, 0.001245 +19, 0.012276, 0.007163, 0.005129, 0.001242 +19, 0.013812, 0.007218, 0.005178, 0.001247 +19, 0.009794, 0.008851, 0.005277, 0.001221 +19, 0.010178, 0.007136, 0.005173, 0.001244 +19, 0.016162, 0.007325, 0.005229, 0.001245 +19, 0.019444, 0.007491, 0.005284, 0.001224 +19, 0.009454, 0.016551, 0.005339, 0.001243 +19, 0.013354, 0.007100, 0.005620, 0.001217 +20, 0.011218, 0.007234, 0.006498, 0.002498 +20, 0.006719, 0.010151, 0.005367, 0.002514 +20, 0.006087, 0.007264, 0.005887, 0.002517 +20, 0.019446, 0.017270, 0.005375, 0.002515 +20, 0.009903, 0.008827, 0.005345, 0.002518 +20, 0.010824, 0.003871, 0.005348, 0.002511 +20, 0.015699, 0.009274, 0.012475, 0.002515 +20, 0.014893, 0.007218, 0.005534, 0.002510 +20, 0.005103, 0.007214, 0.007588, 0.002512 +20, 0.008827, 0.007348, 0.005394, 0.002512 +20, 0.023888, 0.009211, 0.014525, 0.001188 +20, 0.013858, 0.008126, 0.005438, 0.002514 +20, 0.010920, 0.007137, 0.014278, 0.002512 +20, 0.012405, 0.012794, 0.005389, 0.002511 +20, 0.012325, 0.007184, 0.005533, 0.002516 +20, 0.013560, 0.007216, 0.005275, 0.002518 +20, 0.012723, 0.007304, 0.005363, 0.002513 +20, 0.011839, 0.007963, 0.005393, 0.002511 +20, 0.005116, 0.007301, 0.011539, 0.002513 +20, 0.022605, 0.007202, 0.005538, 0.002511 +20, 0.015356, 0.007389, 0.005325, 0.002510 +20, 0.009852, 0.010357, 0.005494, 0.002512 +20, 0.014776, 0.007393, 0.005461, 0.002515 +20, 0.018672, 0.008643, 0.012978, 0.002515 +20, 0.008021, 0.007564, 0.005504, 0.002510 +20, 0.006237, 0.009692, 0.005237, 0.002514 +20, 0.016762, 0.007190, 0.005345, 0.002514 +20, 0.004491, 0.007172, 0.005537, 0.002510 +20, 0.026010, 0.009363, 0.003690, 0.002512 +20, 0.007905, 0.007286, 0.005345, 0.002511 +21, 0.010101, 0.020596, 0.005549, 0.002546 +21, 0.012868, 0.007204, 0.012024, 0.002557 +21, 0.016079, 0.007103, 0.005458, 0.002547 +21, 0.015742, 0.005029, 0.004331, 0.002545 +21, 0.018029, 0.007522, 0.005296, 0.002567 +21, 0.011323, 0.007147, 0.005437, 0.002539 +21, 0.006391, 0.010372, 0.009860, 0.002542 +21, 0.008643, 0.007071, 0.011542, 0.017353 +21, 0.019888, 0.007113, 0.005345, 0.002540 +21, 0.011667, 0.011332, 0.005338, 0.002556 +21, 0.015586, 0.007245, 0.005391, 0.002562 +21, 0.015260, 0.006990, 0.005461, 0.002538 +21, 0.013036, 0.007203, 0.005329, 0.002554 +21, 0.015424, 0.007041, 0.005450, 0.002561 +21, 0.015313, 0.018499, 0.005314, 0.002553 +21, 0.008111, 0.006976, 0.005494, 0.002536 +21, 0.009570, 0.002542, 0.005404, 0.002553 +21, 0.015267, 0.004998, 0.005344, 0.002540 +21, 0.007499, 0.007066, 0.005433, 0.002537 +21, 0.022478, 0.007670, 0.007426, 0.002537 +21, 0.011163, 0.008228, 0.014725, 0.002539 +21, 0.009657, 0.012887, 0.005424, 0.002573 +21, 0.014761, 0.015767, 0.005461, 0.002549 +21, 0.013595, 0.008464, 0.005466, 0.002550 +21, 0.009898, 0.007135, 0.005376, 0.002541 +21, 0.023278, 0.007663, 0.010263, 0.009074 +21, 0.010819, 0.007210, 0.005515, 0.002540 +21, 0.022857, 0.008291, 0.005325, 0.002543 +21, 0.019232, 0.006975, 0.005403, 0.002551 +21, 0.010969, 0.007009, 0.005507, 0.002541 +22, 0.013029, 0.008410, 0.005207, 0.002547 +22, 0.009221, 0.007201, 0.005308, 0.002550 +22, 0.026422, 0.003832, 0.005128, 0.002545 +22, 0.007926, 0.007205, 0.005207, 0.002539 +22, 0.006169, 0.013200, 0.005165, 0.002537 +22, 0.007153, 0.007351, 0.005353, 0.002527 +22, 0.009552, 0.019998, 0.003785, 0.002543 +22, 0.014950, 0.007375, 0.005545, 0.002546 +22, 0.003756, 0.007420, 0.005397, 0.002543 +22, 0.015330, 0.015157, 0.005217, 0.002558 +22, 0.012671, 0.007615, 0.005253, 0.002549 +22, 0.006136, 0.007193, 0.005436, 0.002551 +22, 0.014185, 0.008044, 0.005357, 0.002540 +22, 0.013263, 0.007735, 0.005231, 0.002539 +22, 0.016408, 0.007266, 0.014682, 0.002560 +22, 0.014434, 0.011434, 0.005207, 0.002549 +22, 0.009121, 0.007177, 0.005190, 0.002537 +22, 0.015173, 0.007285, 0.005196, 0.002537 +22, 0.014710, 0.007295, 0.005274, 0.002551 +22, 0.013718, 0.009387, 0.007501, 0.002535 +22, 0.017943, 0.016522, 0.014801, 0.009611 +22, 0.011659, 0.007265, 0.005212, 0.002532 +22, 0.013518, 0.010859, 0.016880, 0.002549 +22, 0.014303, 0.007287, 0.005306, 0.002541 +22, 0.009010, 0.007290, 0.005233, 0.002546 +22, 0.015423, 0.018856, 0.005342, 0.002547 +22, 0.012612, 0.007378, 0.005324, 0.002552 +22, 0.013829, 0.010632, 0.005282, 0.002547 +22, 0.017428, 0.010139, 0.005238, 0.002536 +22, 0.016009, 0.007214, 0.005321, 0.002548 +23, 0.013140, 0.008271, 0.005375, 0.002577 +23, 0.011277, 0.008273, 0.005628, 0.002564 +23, 0.011284, 0.008502, 0.005382, 0.002566 +23, 0.011156, 0.008338, 0.005345, 0.002579 +23, 0.029010, 0.008336, 0.005375, 0.002571 +23, 0.011664, 0.008377, 0.005529, 0.002568 +23, 0.009817, 0.008525, 0.005349, 0.002579 +23, 0.012983, 0.008535, 0.005461, 0.002550 +23, 0.016620, 0.008643, 0.010780, 0.010361 +23, 0.012474, 0.009576, 0.008212, 0.002570 +23, 0.011275, 0.013008, 0.005646, 0.002567 +23, 0.016668, 0.009865, 0.005251, 0.002580 +23, 0.018626, 0.008393, 0.005516, 0.002587 +23, 0.007692, 0.017759, 0.005362, 0.002585 +23, 0.011820, 0.008435, 0.005325, 0.002595 +23, 0.013951, 0.008324, 0.005324, 0.002567 +23, 0.012843, 0.012268, 0.005554, 0.002598 +23, 0.014252, 0.012891, 0.009110, 0.002578 +23, 0.004790, 0.017724, 0.005293, 0.002569 +23, 0.011967, 0.008555, 0.005294, 0.002549 +23, 0.012214, 0.008471, 0.005492, 0.002584 +23, 0.006175, 0.008385, 0.005398, 0.002560 +23, 0.012362, 0.010460, 0.005415, 0.002563 +23, 0.009259, 0.010296, 0.005242, 0.002570 +23, 0.013471, 0.010035, 0.005335, 0.002560 +23, 0.009214, 0.008276, 0.005380, 0.002560 +23, 0.015774, 0.009431, 0.006427, 0.002605 +23, 0.009363, 0.008275, 0.005279, 0.002588 +23, 0.012775, 0.008553, 0.013334, 0.002622 +23, 0.011698, 0.008386, 0.005496, 0.002571 +24, 0.008348, 0.009888, 0.008804, 0.005532 +24, 0.013932, 0.018803, 0.005456, 0.002564 +24, 0.008328, 0.008377, 0.005399, 0.002568 +24, 0.014941, 0.009595, 0.025113, 0.002570 +24, 0.014051, 0.008162, 0.005573, 0.002585 +24, 0.017796, 0.008116, 0.005503, 0.002560 +24, 0.009856, 0.007941, 0.005529, 0.002565 +24, 0.017205, 0.008206, 0.011900, 0.002566 +24, 0.012408, 0.007907, 0.005362, 0.002567 +24, 0.026944, 0.010052, 0.005474, 0.002565 +24, 0.011888, 0.009673, 0.005482, 0.002566 +24, 0.012254, 0.008157, 0.005518, 0.002560 +24, 0.014210, 0.008130, 0.012838, 0.002568 +24, 0.009615, 0.008238, 0.005417, 0.002555 +24, 0.016332, 0.008128, 0.005375, 0.002559 +24, 0.015041, 0.008197, 0.005488, 0.002550 +24, 0.006344, 0.008139, 0.005593, 0.002581 +24, 0.015966, 0.008203, 0.005553, 0.002560 +24, 0.009884, 0.008260, 0.005474, 0.002552 +24, 0.018285, 0.013809, 0.005440, 0.002550 +24, 0.014170, 0.008216, 0.009166, 0.007036 +24, 0.016744, 0.009189, 0.005595, 0.002556 +24, 0.020054, 0.011007, 0.005512, 0.002568 +24, 0.009513, 0.013624, 0.013824, 0.005852 +24, 0.008838, 0.008039, 0.005497, 0.002576 +24, 0.015899, 0.014145, 0.008674, 0.002713 +24, 0.015791, 0.008276, 0.005711, 0.002530 +24, 0.016662, 0.012060, 0.007482, 0.010159 +24, 0.018060, 0.008280, 0.005430, 0.002565 +24, 0.012979, 0.013159, 0.006642, 0.002561 +25, 0.013639, 0.007922, 0.005300, 0.002558 +25, 0.013870, 0.013516, 0.007665, 0.002574 +25, 0.015749, 0.008007, 0.005311, 0.002588 +25, 0.020744, 0.007934, 0.005322, 0.002572 +25, 0.013845, 0.008415, 0.005279, 0.002561 +25, 0.009300, 0.008124, 0.005376, 0.002571 +25, 0.016814, 0.007943, 0.005440, 0.002572 +25, 0.008028, 0.013153, 0.005452, 0.002572 +25, 0.014442, 0.009289, 0.005342, 0.002556 +25, 0.017026, 0.008224, 0.005572, 0.002558 +25, 0.019010, 0.008127, 0.005440, 0.002554 +25, 0.009534, 0.008162, 0.005381, 0.002569 +25, 0.005927, 0.013562, 0.005455, 0.002556 +25, 0.013800, 0.013282, 0.005281, 0.002553 +25, 0.013984, 0.008005, 0.005396, 0.002572 +25, 0.008021, 0.007946, 0.010591, 0.002553 +25, 0.023691, 0.005801, 0.005516, 0.002569 +25, 0.016909, 0.008175, 0.009196, 0.002553 +25, 0.016011, 0.008441, 0.005337, 0.002550 +25, 0.011117, 0.008424, 0.005258, 0.002548 +25, 0.008835, 0.008082, 0.005433, 0.002567 +25, 0.009687, 0.008015, 0.005275, 0.002564 +25, 0.009788, 0.019577, 0.020602, 0.002552 +25, 0.015490, 0.008155, 0.005379, 0.002568 +25, 0.013856, 0.013145, 0.005506, 0.002553 +25, 0.008796, 0.008740, 0.005359, 0.002562 +25, 0.013191, 0.012396, 0.005759, 0.002548 +25, 0.022370, 0.008130, 0.005190, 0.002545 +25, 0.015080, 0.013097, 0.019094, 0.005046 +25, 0.023670, 0.008160, 0.006128, 0.002533 +26, 0.017319, 0.008005, 0.005427, 0.002548 +26, 0.005811, 0.007964, 0.005347, 0.002541 +26, 0.010678, 0.008074, 0.005272, 0.002527 +26, 0.014274, 0.010372, 0.012433, 0.002537 +26, 0.007737, 0.008063, 0.005395, 0.002540 +26, 0.014242, 0.008050, 0.005280, 0.002542 +26, 0.010888, 0.006024, 0.017854, 0.002544 +26, 0.012596, 0.008197, 0.005315, 0.002549 +26, 0.015115, 0.008110, 0.005240, 0.002537 +26, 0.008197, 0.008078, 0.005437, 0.002553 +26, 0.016617, 0.009452, 0.013489, 0.004362 +26, 0.017049, 0.008162, 0.005324, 0.002540 +26, 0.014104, 0.007994, 0.005328, 0.002550 +26, 0.006727, 0.011221, 0.005254, 0.002536 +26, 0.012605, 0.011840, 0.005352, 0.002548 +26, 0.018894, 0.008161, 0.005347, 0.002544 +26, 0.018936, 0.008051, 0.013686, 0.002552 +26, 0.011897, 0.013728, 0.005299, 0.002549 +26, 0.032857, 0.003353, 0.005300, 0.002543 +26, 0.023405, 0.008377, 0.005361, 0.002569 +26, 0.011845, 0.013338, 0.005404, 0.002534 +26, 0.014128, 0.008671, 0.005434, 0.002529 +26, 0.008495, 0.008046, 0.005376, 0.002524 +26, 0.022463, 0.008051, 0.005537, 0.002544 +26, 0.012366, 0.008027, 0.005364, 0.002532 +26, 0.015686, 0.007998, 0.011563, 0.002534 +26, 0.018783, 0.008221, 0.005246, 0.002538 +26, 0.018932, 0.008123, 0.010781, 0.002534 +26, 0.010046, 0.027775, 0.008543, 0.000074 +26, 0.022195, 0.008361, 0.005282, 0.002534 +27, 0.021193, 0.012666, 0.005303, 0.002536 +27, 0.010373, 0.009216, 0.005352, 0.002537 +27, 0.027693, 0.000111, 0.015208, 0.005124 +27, 0.015404, 0.019968, 0.006582, 0.002552 +27, 0.031650, 0.007912, 0.005541, 0.002531 +27, 0.024553, 0.000115, 0.008318, 0.000082 +27, 0.011371, 0.009777, 0.005445, 0.002532 +27, 0.006659, 0.007834, 0.005376, 0.002535 +27, 0.017688, 0.010724, 0.005514, 0.002562 +27, 0.010972, 0.010171, 0.029601, 0.001920 +27, 0.009593, 0.008093, 0.005358, 0.002528 +27, 0.014931, 0.013085, 0.005553, 0.002543 +27, 0.015962, 0.008329, 0.005429, 0.002548 +27, 0.013371, 0.012979, 0.005041, 0.002548 +27, 0.011887, 0.015886, 0.005485, 0.002527 +27, 0.013382, 0.007975, 0.005384, 0.002541 +27, 0.017196, 0.011406, 0.005538, 0.002556 +27, 0.017044, 0.007905, 0.006337, 0.011280 +27, 0.011689, 0.008127, 0.006228, 0.002517 +27, 0.012516, 0.012779, 0.005271, 0.002529 +27, 0.006204, 0.011084, 0.005477, 0.002546 +27, 0.007682, 0.008338, 0.005576, 0.002546 +27, 0.010884, 0.008032, 0.005471, 0.002544 +27, 0.024664, 0.010710, 0.013807, 0.018494 +27, 0.006246, 0.009178, 0.005369, 0.002533 +27, 0.007137, 0.008771, 0.005351, 0.002540 +27, 0.016281, 0.008032, 0.005417, 0.002522 +27, 0.009655, 0.008313, 0.006307, 0.002522 +27, 0.007897, 0.009116, 0.005417, 0.002541 +27, 0.014877, 0.013347, 0.005425, 0.002522 +28, 0.017003, 0.008263, 0.005466, 0.002507 +28, 0.010234, 0.013768, 0.012952, 0.007767 +28, 0.008942, 0.008069, 0.005400, 0.002550 +28, 0.019045, 0.008156, 0.005573, 0.002512 +28, 0.012987, 0.009489, 0.005368, 0.002528 +28, 0.011556, 0.016009, 0.005488, 0.002513 +28, 0.021181, 0.008400, 0.005369, 0.002506 +28, 0.014409, 0.008014, 0.005444, 0.002513 +28, 0.011636, 0.008289, 0.005554, 0.002527 +28, 0.009732, 0.008228, 0.005332, 0.002513 +28, 0.009980, 0.008218, 0.005449, 0.002523 +28, 0.005819, 0.008012, 0.005398, 0.002530 +28, 0.018621, 0.008265, 0.005319, 0.002512 +28, 0.018615, 0.011162, 0.005578, 0.002521 +28, 0.012940, 0.015627, 0.007393, 0.002531 +28, 0.011841, 0.007027, 0.005396, 0.002529 +28, 0.017886, 0.022058, 0.009910, 0.002528 +28, 0.017829, 0.008186, 0.005521, 0.002524 +28, 0.009179, 0.008012, 0.005311, 0.002523 +28, 0.015565, 0.008020, 0.005368, 0.002497 +28, 0.015089, 0.008641, 0.005300, 0.002506 +28, 0.018046, 0.008244, 0.005407, 0.002541 +28, 0.007793, 0.007998, 0.005379, 0.002517 +28, 0.011147, 0.008187, 0.005523, 0.002520 +28, 0.017196, 0.008037, 0.009923, 0.002493 +28, 0.011451, 0.008109, 0.008653, 0.002504 +28, 0.018090, 0.010780, 0.005484, 0.002509 +28, 0.011142, 0.009390, 0.005415, 0.002504 +28, 0.007377, 0.008098, 0.005508, 0.002505 +28, 0.011023, 0.010205, 0.008189, 0.007926 +29, 0.009528, 0.008473, 0.005575, 0.002516 +29, 0.013883, 0.017648, 0.014656, 0.002511 +29, 0.031512, 0.011694, 0.005601, 0.002539 +29, 0.007216, 0.009357, 0.005402, 0.002501 +29, 0.017403, 0.008290, 0.005459, 0.002514 +29, 0.012966, 0.008376, 0.005570, 0.002506 +29, 0.010115, 0.008197, 0.005532, 0.002536 +29, 0.012486, 0.006156, 0.005433, 0.002518 +29, 0.018266, 0.008407, 0.005448, 0.002498 +29, 0.011561, 0.009198, 0.007574, 0.002510 +29, 0.007307, 0.014829, 0.005604, 0.002517 +29, 0.013055, 0.008427, 0.005583, 0.002499 +29, 0.006623, 0.009684, 0.005548, 0.002499 +29, 0.016978, 0.010040, 0.005643, 0.002485 +29, 0.024908, 0.012793, 0.012690, 0.002516 +29, 0.022270, 0.023375, 0.005543, 0.002494 +29, 0.014315, 0.013680, 0.012948, 0.002485 +29, 0.013760, 0.016213, 0.008740, 0.002485 +29, 0.017136, 0.008831, 0.005572, 0.002486 +29, 0.012869, 0.013286, 0.018774, 0.002492 +29, 0.013112, 0.022358, 0.007738, 0.002507 +29, 0.019098, 0.020754, 0.007858, 0.002483 +29, 0.014485, 0.008563, 0.005489, 0.002500 +29, 0.008504, 0.016649, 0.027319, 0.012123 +29, 0.008217, 0.008299, 0.005527, 0.002514 +29, 0.008954, 0.009056, 0.005400, 0.002485 +29, 0.013415, 0.008397, 0.005475, 0.002492 +29, 0.010091, 0.008887, 0.005436, 0.002490 +29, 0.008927, 0.008474, 0.005455, 0.002487 +29, 0.021736, 0.011863, 0.005609, 0.002487 +30, 0.005410, 0.010977, 0.018252, 0.008166 +30, 0.016745, 0.010974, 0.005363, 0.002504 +30, 0.017684, 0.010268, 0.005366, 0.002503 +30, 0.010486, 0.008462, 0.005362, 0.002493 +30, 0.014373, 0.008316, 0.005527, 0.002486 +30, 0.007716, 0.008213, 0.005507, 0.002485 +30, 0.018658, 0.012966, 0.020401, 0.010861 +30, 0.008392, 0.008852, 0.005563, 0.002485 +30, 0.022600, 0.018390, 0.009987, 0.017646 +30, 0.017531, 0.008577, 0.005751, 0.002515 +30, 0.007692, 0.015593, 0.005929, 0.002481 +30, 0.016929, 0.023192, 0.007814, 0.002480 +30, 0.010840, 0.008724, 0.005399, 0.002484 +30, 0.020281, 0.010128, 0.005510, 0.002481 +30, 0.008531, 0.008436, 0.005644, 0.002485 +30, 0.015740, 0.016524, 0.005535, 0.002491 +30, 0.007606, 0.008349, 0.005466, 0.002481 +30, 0.011145, 0.010666, 0.006148, 0.002481 +30, 0.017920, 0.008300, 0.005377, 0.002505 +30, 0.014364, 0.008684, 0.005671, 0.002502 +30, 0.016337, 0.009917, 0.029231, 0.020713 +30, 0.013159, 0.013015, 0.009903, 0.002499 +30, 0.018104, 0.011116, 0.005504, 0.002477 +30, 0.018969, 0.008307, 0.014349, 0.002523 +30, 0.012117, 0.014924, 0.019647, 0.002497 +30, 0.013562, 0.012179, 0.005514, 0.002475 +30, 0.017723, 0.008326, 0.005410, 0.002487 +30, 0.016082, 0.008408, 0.028481, 0.002480 +30, 0.015554, 0.014455, 0.005357, 0.002475 +30, 0.010469, 0.008308, 0.013169, 0.002473 +31, 0.008262, 0.013177, 0.007351, 0.002427 +31, 0.004492, 0.008257, 0.006933, 0.002425 +31, 0.008083, 0.008501, 0.011212, 0.007298 +31, 0.013085, 0.017187, 0.006771, 0.002426 +31, 0.015057, 0.013600, 0.006723, 0.002435 +31, 0.009528, 0.016017, 0.006919, 0.002421 +31, 0.019944, 0.019996, 0.004998, 0.002424 +31, 0.006896, 0.010202, 0.006665, 0.002417 +31, 0.003584, 0.008376, 0.006726, 0.002419 +31, 0.016873, 0.008487, 0.006769, 0.002424 +31, 0.013804, 0.008918, 0.006763, 0.002418 +31, 0.013457, 0.010121, 0.006778, 0.002425 +31, 0.007270, 0.008335, 0.006883, 0.002417 +31, 0.026808, 0.006226, 0.006865, 0.002416 +31, 0.002989, 0.008497, 0.010791, 0.002420 +31, 0.009484, 0.009323, 0.006792, 0.002423 +31, 0.007556, 0.015573, 0.006905, 0.002411 +31, 0.003921, 0.008389, 0.012715, 0.002428 +31, 0.003095, 0.008620, 0.006800, 0.002423 +31, 0.002297, 0.016374, 0.007019, 0.002418 +31, 0.010643, 0.008464, 0.006770, 0.002428 +31, 0.004880, 0.008414, 0.006856, 0.002413 +31, 0.013896, 0.015098, 0.006845, 0.002422 +31, 0.001638, 0.008792, 0.006908, 0.002414 +31, 0.011428, 0.011100, 0.009521, 0.002413 +31, 0.005713, 0.021126, 0.014311, 0.002425 +31, 0.016973, 0.025188, 0.013219, 0.002411 +31, 0.013383, 0.008472, 0.006932, 0.002414 +31, 0.006150, 0.010416, 0.007064, 0.010848 +31, 0.000072, 0.006381, 0.006758, 0.002412 +32, 0.015578, 0.014073, 0.006614, 0.002455 +32, 0.008472, 0.008379, 0.006664, 0.002447 +32, 0.018459, 0.008238, 0.006616, 0.002446 +32, 0.011096, 0.008060, 0.006621, 0.002437 +32, 0.015098, 0.002776, 0.006706, 0.002444 +32, 0.015447, 0.008251, 0.006621, 0.002454 +32, 0.018479, 0.011908, 0.006741, 0.002446 +32, 0.016191, 0.008139, 0.006832, 0.002446 +32, 0.013713, 0.011680, 0.015463, 0.002446 +32, 0.010048, 0.008216, 0.006758, 0.002466 +32, 0.015513, 0.008179, 0.006736, 0.002433 +32, 0.015326, 0.008108, 0.006596, 0.002445 +32, 0.009018, 0.014524, 0.011506, 0.011836 +32, 0.009928, 0.008184, 0.006692, 0.002430 +32, 0.016881, 0.008047, 0.008874, 0.002443 +32, 0.017745, 0.008179, 0.006665, 0.002442 +32, 0.016190, 0.007992, 0.006599, 0.002436 +32, 0.015568, 0.008566, 0.006695, 0.002447 +32, 0.016227, 0.010017, 0.013837, 0.002439 +32, 0.008817, 0.018328, 0.006586, 0.002427 +32, 0.005523, 0.008345, 0.020895, 0.002435 +32, 0.013508, 0.009128, 0.008806, 0.002467 +32, 0.022369, 0.014462, 0.011344, 0.002439 +32, 0.014155, 0.014470, 0.009327, 0.002438 +32, 0.011352, 0.014125, 0.006595, 0.002435 +32, 0.019244, 0.014881, 0.013720, 0.002438 +32, 0.010812, 0.008169, 0.006611, 0.002427 +32, 0.009821, 0.008224, 0.006759, 0.002434 +32, 0.016638, 0.010051, 0.006786, 0.002438 +32, 0.018210, 0.008264, 0.007935, 0.002425 +33, 0.014814, 0.008320, 0.006901, 0.002438 +33, 0.014519, 0.013030, 0.006663, 0.002435 +33, 0.009422, 0.008440, 0.006698, 0.002424 +33, 0.020008, 0.008384, 0.006630, 0.002436 +33, 0.011738, 0.008359, 0.007968, 0.002434 +33, 0.016780, 0.008367, 0.006677, 0.002417 +33, 0.008168, 0.008352, 0.006736, 0.002432 +33, 0.017138, 0.008452, 0.006673, 0.002431 +33, 0.023484, 0.009434, 0.009058, 0.009035 +33, 0.012351, 0.008438, 0.006599, 0.002424 +33, 0.017597, 0.008346, 0.006640, 0.002420 +33, 0.018857, 0.008314, 0.006579, 0.002430 +33, 0.014664, 0.008472, 0.006653, 0.002432 +33, 0.016743, 0.008392, 0.006604, 0.002417 +33, 0.010125, 0.015492, 0.010092, 0.002432 +33, 0.016089, 0.009154, 0.006686, 0.002430 +33, 0.013525, 0.021297, 0.006759, 0.002428 +33, 0.016336, 0.009515, 0.006748, 0.002414 +33, 0.017673, 0.012692, 0.006635, 0.002414 +33, 0.015870, 0.008419, 0.006763, 0.002426 +33, 0.012995, 0.008610, 0.012630, 0.011562 +33, 0.016931, 0.018442, 0.012708, 0.002426 +33, 0.011077, 0.008358, 0.006687, 0.002427 +33, 0.010055, 0.008312, 0.006747, 0.002425 +33, 0.016857, 0.008509, 0.006776, 0.002428 +33, 0.017047, 0.010629, 0.006788, 0.002426 +33, 0.008064, 0.013904, 0.006985, 0.002437 +33, 0.016268, 0.008228, 0.006666, 0.002415 +33, 0.011186, 0.011991, 0.006627, 0.002424 +33, 0.014944, 0.008545, 0.006587, 0.002427 +34, 0.019927, 0.009463, 0.010743, 0.002426 +34, 0.014320, 0.008163, 0.006759, 0.002443 +34, 0.027584, 0.008209, 0.006710, 0.002441 +34, 0.025078, 0.012374, 0.006711, 0.002441 +34, 0.011866, 0.021799, 0.007114, 0.002444 +34, 0.011466, 0.008268, 0.006770, 0.002416 +34, 0.007618, 0.008340, 0.006707, 0.002442 +34, 0.016067, 0.008675, 0.006753, 0.002434 +34, 0.017139, 0.013477, 0.015080, 0.002423 +34, 0.018184, 0.008249, 0.006549, 0.002420 +34, 0.009975, 0.011559, 0.006948, 0.002424 +34, 0.013017, 0.008420, 0.006744, 0.002439 +34, 0.025835, 0.017775, 0.016988, 0.007536 +34, 0.017414, 0.012266, 0.006545, 0.002431 +34, 0.014521, 0.008248, 0.018854, 0.007259 +34, 0.021416, 0.017033, 0.008137, 0.009625 +34, 0.015752, 0.008221, 0.006710, 0.002439 +34, 0.019212, 0.008288, 0.006549, 0.002418 +34, 0.009072, 0.019656, 0.012319, 0.002419 +34, 0.016962, 0.016409, 0.008720, 0.010757 +34, 0.015445, 0.008160, 0.006518, 0.002413 +34, 0.007896, 0.008418, 0.006675, 0.002436 +34, 0.015224, 0.008482, 0.006622, 0.002443 +34, 0.011868, 0.008244, 0.006456, 0.002411 +34, 0.013466, 0.021208, 0.014127, 0.010797 +34, 0.019657, 0.010551, 0.007963, 0.002437 +34, 0.014792, 0.008319, 0.006655, 0.002417 +34, 0.012325, 0.011537, 0.006668, 0.002431 +34, 0.015358, 0.011703, 0.006634, 0.002412 +34, 0.012276, 0.008180, 0.006614, 0.002395 +35, 0.013475, 0.008449, 0.006695, 0.002440 +35, 0.008826, 0.008358, 0.006577, 0.002431 +35, 0.019452, 0.009300, 0.006607, 0.002416 +35, 0.018398, 0.009959, 0.006612, 0.002426 +35, 0.018913, 0.006591, 0.006688, 0.002428 +35, 0.019641, 0.008412, 0.006770, 0.002451 +35, 0.014186, 0.008336, 0.020870, 0.002416 +35, 0.016452, 0.008265, 0.006629, 0.002441 +35, 0.014615, 0.008758, 0.006659, 0.002425 +35, 0.022004, 0.015794, 0.006977, 0.011144 +35, 0.015486, 0.010334, 0.006659, 0.002437 +35, 0.010427, 0.017998, 0.006607, 0.002426 +35, 0.012405, 0.008582, 0.006694, 0.002427 +35, 0.014159, 0.009943, 0.006775, 0.002437 +35, 0.009182, 0.008678, 0.006641, 0.002408 +35, 0.019439, 0.008350, 0.014547, 0.008377 +35, 0.012021, 0.008373, 0.008825, 0.002430 +35, 0.019946, 0.017448, 0.006611, 0.002423 +35, 0.010752, 0.008378, 0.006615, 0.002420 +35, 0.019978, 0.006791, 0.006676, 0.002420 +35, 0.010370, 0.009068, 0.016151, 0.002433 +35, 0.016389, 0.008564, 0.010766, 0.002418 +35, 0.007689, 0.010758, 0.006830, 0.002440 +35, 0.015946, 0.008319, 0.006909, 0.002434 +35, 0.011503, 0.008588, 0.006584, 0.002431 +35, 0.015610, 0.009552, 0.006647, 0.002441 +35, 0.015437, 0.008276, 0.006808, 0.002419 +35, 0.018699, 0.008544, 0.006621, 0.002431 +35, 0.010822, 0.008424, 0.010721, 0.002419 +35, 0.020429, 0.008411, 0.017012, 0.020789 diff --git a/reduce/report/report.tex b/reduce/report/report.tex new file mode 100755 index 0000000..bfb788e --- /dev/null +++ b/reduce/report/report.tex @@ -0,0 +1,225 @@ +\documentclass[a4paper, DIV=12]{scrartcl} +\usepackage[english]{babel} +\usepackage[utf8]{inputenc} +\usepackage[dvipsnames]{xcolor} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{stmaryrd} +\usepackage{graphicx} +\usepackage{pdflscape} +\usepackage{listingsutf8} +\usepackage{spverbatim} +\usepackage{placeins} +\usepackage{lmodern} +%\usepackage{helvet} +\usepackage{booktabs} +\usepackage[T1]{fontenc} +\usepackage{microtype} +\usepackage{framed} +\usepackage[colorlinks=true, + linkcolor=blue, + urlcolor=blue, + breaklinks=true, + citecolor=blue]{hyperref} +\usepackage{prettyref} +\usepackage{lastpage} +\usepackage{subcaption} +\usepackage{tabularx} +\usepackage{adjustbox} +\usepackage{pdfpages} +\usepackage{xspace} +\usepackage[inline]{enumitem} +\usepackage[abbreviate=false,maxbibnames=99,backend=biber]{biblatex} +\usepackage{textcomp} +\usepackage{tikz} +\usepackage[ruled,linesnumbered]{algorithm2e} + +\setkomafont{disposition}{\normalfont\bfseries} + +\setlist[itemize]{itemsep=0.1em} +\setlist[enumerate]{itemsep=0.1em} + + +\newrefformat{tbl}{\hyperref[#1]{Table~\ref*{#1}}} +\newrefformat{fig}{\hyperref[#1]{Figure~\ref*{#1}}} +\newrefformat{lst}{\hyperref[#1]{Listing~\ref*{#1}}} +\newrefformat{equ}{\hyperref[#1]{Equation~\ref*{#1}}} +\newrefformat{sec}{\hyperref[#1]{Section~\ref*{#1}}} +\newrefformat{alg}{\hyperref[#1]{Algorithm~\ref*{#1}}} +\renewcommand{\arraystretch}{1.2} + +\newcommand\bigforall{\mbox{\Large $\mathsurround0pt\forall$}} +\everymath{\displaystyle} + +\lstset{ % + backgroundcolor=\color{white}, % choose the background color; you must add \usepackage{color} or + basicstyle=\ttfamily, % the size of the fonts that are used for the code + breakatwhitespace=true, % sets if automatic breaks should only happen at whitespace + breaklines=true, % sets automatic line breaking + captionpos=b, % sets the caption-position to bottom + escapeinside={(*}{*)}, % if you want to add LaTeX within your code + extendedchars=true, % lets you use non-ASCII characters; for 8-bits encodings only, does not work with UTF-8 + frame=single, % adds a frame around the code + keepspaces=true, % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible) + language=TeX, % the language of the code + numbers=left, % where to put the line-numbers; possible values are (none, left, right) + numbersep=5pt, % how far the line-numbers are from the code + numberstyle=\tiny\color{gray}, % the style that is used for the line-numbers + rulecolor=\color{black}, % if not set, the frame-color may be changed on line-breaks within not-black text (e.g. comments (green here)) + showspaces=false, % show spaces everywhere adding particular underscores; it overrides 'showstringspaces' + showstringspaces=false, % underline spaces within strings only + showtabs=false, % show tabs within strings adding particular underscores + stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered + tabsize=2, % sets default tabsize to 2 spaces + title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title + emph=[3]{int:,array,set,of,int,if,then,else,constraint,var,union,endif,function,where,in,div,predicate,let,opt,full,format,def,for,True,False,return,or}, + emphstyle=[3]\color{ForestGreen}, + emph=[2]{length,max,forall,startEmptyBuffer,fix,startEmptyBufferShow,exactly,cumulative,occurs,deopt,sum,,all}, + emphstyle=[2]\color{blue}, + commentstyle=\color{BrickRed}, + stringstyle =\color{red}, +} + +\begin{document} + +\subject{High Performance Computing} +\title{Reduction trees for MPI Reductions} +\subtitle{Project 2} + +\author{Johannes Winklehner\\1226104 \and Armin Friedl\\1053597} +\date{\today} + +\maketitle + +\tableofcontents + +\newpage + +\section{Problem Description} +\label{sec:description} + +The purpose of this project is to compare different implementations of the collective communication call MPI\_Reduce. +The compared implementations should all use different forms of Tree Reduction algorithms. +As a baseline for the comparison serves a given implementation of the MPI standard, which is in our case NEC MPI. +\begin{description} + \item[Binomial Tree] + A binomial tree has a non-fixed degree where each tree $B_i$ has exactly $i$ subtrees of size $B_0$ to $B_{i-1}$. + The number of nodes in such a tree is equal to $2^i$ and the depth is $i$. + \item[Fibonacci Tree] + The Fibonacci tree uses a fixed degree of $2$ where a tree of size $F_i$ has one subtree of size $T_{i-1}$ and one of $T_{i-2}$. + Therefore the number of nodes in this kind of tree is $fib(i+3)-1$ using the Fibonacci function $fib(x) = fib(x-1)+fib(x-2)$ and its depth is as well $i$. + \item[Binary Tree] + The binary tree used for reduction is a common complete binary tree where a tree $T_i$ has two subtrees $T_{i-1}$. + Such a tree has $2^{i+1}-1$ nodes and its depth is as for the other types $i$. +\end{description} + +\begin{center} +\begin{minipage}{.4\textwidth} +\begin{tikzpicture} +\node [circle,draw]{$B_i$} +child { node [circle,draw]{$B_{i-1}$}} +child {node [circle,draw] {$B_{i-2}$}} +child {node {\dots} edge from parent[draw=none]} +child {node [circle,draw] {$B_0$}}; +\end{tikzpicture} +%\caption{Binomial Tree of size $i$} +\end{minipage} +\begin{minipage}{.2\textwidth} +\begin{tikzpicture} +\node [circle,draw]{$F_i$} +child { node [circle,draw]{$F_{i-1}$}} +child {node [circle,draw] {$F_{i-2}$}}; +\end{tikzpicture} +%\caption{Fibonacci Tree of size $i$} +\end{minipage} +\begin{minipage}{.2\textwidth} +\begin{tikzpicture} +\node [circle,draw]{$T_i$} +child { node [circle,draw]{$T_{i-1}$}} +child {node [circle,draw] {$T_{i-2}$}}; +\end{tikzpicture} +%\caption{Complete Binary Tree of size $i$} +\end{minipage} +\end{center} + +All three implementations of the reduce function must use exactly the same interface as the MPI standard defines it. +This interface is shown in \prettyref{lst:reduce}. +This requires that all implementations support any arbitrary MPI datatype as well as operations. +The standard also provides some constraints regarding the associativity and commutativity of executable operations. +Every MPI operation must be associative, but does not necessarily have to be commutative. +This means that all results of the operation must be computed in the MPI rank order of all processes. + +\begin{lstlisting}[language=C, caption=MPI Reduce interface, label=lst:reduce] +int MPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm) +\end{lstlisting} + +The standard also defines additional features of the reduce function, for example an in place operator for the root process. +However since those details where not mentioned in the assignment description, we did not consider them as part of the project. + +The basic algorithm for a tree reduction, which will be shown in the next section, is very similar for all kinds of trees and uses Point-to-Point communication between tree nodes. +The assumption for our implementations to be efficient is that the underlying communication network is fully connected and allows for bidirectional communication. + +\FloatBarrier + +\section{Implemented Algorithms} +\label{sec:algorithms} + +The basic algorithm for a tree reduction is very simple and is shown in \prettyref{alg:reduce}. +At first the parent and all child nodes have to be determined to know the communication partners of each process. +Then each process receives the partial results from all of its children and calculates its own result from the received data. +To ensure the correctness of the result for non commutative operations the iteration of child nodes has to be done in rank order. +Processes which are leaf nodes in the tree have no children and therefore skip the receiving part of the algorithm. +If a process has a parent and is therefore not the root process, it sends its result to the determined parent node. +However if the process is the root process the reduction is finished and can be returned. + +\begin{algorithm} + \caption{Tree Reduce} + \label{alg:reduce} + \KwIn{An array $\vec{a}$ of a given $datatype$ with size $count$ for each process} + \KwOut{The result of the reduction on the $root$ process} + determine $parent$ and $children$\; + $result = \vec{a}$\; + \ForAll{child in children}{ + receive $result$ from $child$\; + $result =$ local reduce of received array and $result$\; + } + \eIf{parent exists}{ + send $result$ to $parent$\; + }{ + $output = result$\; + } +\end{algorithm} + +The calculation of the parent and child nodes is the only aspect which has to be changed for all possible kinds of trees. +However there are of course certain optimizations possible to use some knowledge of a concrete tree. + +\FloatBarrier + +\section{Implementation Details} +\label{sec:kernels} + +\FloatBarrier + +\section{Results} +\label{sec:results} + +\FloatBarrier + +\section{Analysis} +\label{sec:analysis} + +\section{Appendix} + +\lstinputlisting[language=C]{../binom_reduce.c} + +\lstinputlisting[language=C]{../fib_reduce.c} + +\lstinputlisting[language=C]{../bin_reduce.c} + +\end{document} + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: