# Part 1: brute force vs DP
PASS brute force = DP for Q_1 and L_1
PASS brute force = DP for Q_2 and L_2
PASS brute force = DP for Q_3 and L_3
PASS brute force = DP for Q_4 and L_4
PASS brute force = DP for Q_5 and L_5
PASS Q_1 = [2] (coefficients of 1, a, a^2, ...)
PASS Q_2 = [8, 2] (coefficients of 1, a, a^2, ...)
PASS Q_3 = [44, 24, 2] (coefficients of 1, a, a^2, ...)
PASS Q_4 = [288, 246, 52, 2] (coefficients of 1, a, a^2, ...)
PASS Q_5 = [2100, 2464, 882, 96, 2] (coefficients of 1, a, a^2, ...)
PASS example NEENSESWWW: quadrant loop with one corner
PASS Q_n(1) = C_n C_{n+1}, Q_n(-1) = sum binom(n,i) C_i C_{n-i}, deg Q_n = n-1 (n <= 20)
PASS L_n(1) = binom(2n,n)^2, L_n(-1) = sum binom(n,i) binom(2i,i) binom(2n-2i,n-i) (n <= 12)
PASS corner pair [('E', 'S'), ('W', 'N')] gives the same Q_n (n <= 4)
PASS corner pair [('S', 'E'), ('W', 'N')] gives the same Q_n (n <= 4)
PASS corner pair [('N', 'W'), ('S', 'E')] gives the same Q_n (n <= 4)
# Part 2: Q_n(a) <= G(a)^n exactly; supermultiplicativity
PASS Q_n(0) <= G(0)^n for 0 <= n <= 20 (max ratio 0.171573)
PASS Q_n(1/2) <= G(1/2)^n for 0 <= n <= 20 (max ratio 0.143594)
PASS Q_n(1) <= G(1)^n for 0 <= n <= 20 (max ratio 0.125000)
PASS Q_n(2) <= G(2)^n for 0 <= n <= 20 (max ratio 0.101021)
PASS Q_n(7) <= G(7)^n for 0 <= n <= 20 (max ratio 0.055556)
PASS Q_(m+n)(0) >= Q_m Q_n for m+n <= 20
PASS Q_(m+n)(1/2) >= Q_m Q_n for m+n <= 20
PASS Q_(m+n)(2) >= Q_m Q_n for m+n <= 20
# Q_n(a) coefficient lists, n <= 20
0 [1]
1 [2]
2 [8, 2]
3 [44, 24, 2]
4 [288, 246, 52, 2]
5 [2100, 2464, 882, 96, 2]
6 [16480, 24756, 12724, 2502, 164, 2]
7 [136416, 250944, 169664, 49960, 6220, 264, 2]
8 [1175952, 2568494, 2164776, 862892, 166064, 14068, 412, 2]
9 [10465804, 26530592, 26882078, 13631488, 3631476, 490224, 29864, 624, 2]
10 [95576144, 276312548, 327924036, 202909382, 69917176, 13340746, 1328400, 60290, 932, 2]
11 [891579168, 2899020928, 3951300056, 2896132440, 1233315064, 309073080, 44286464, 3367480, 117382, 1368, 2]
12 [8466788368, 30615748292, 47192924280, 40075089892, 20418517640, 6398501062, 1220428880, 135787678, 8104996, 221714, 1996, 2]
13 [81634441208, 325214603104, 559999436836, 541570473504, 322263362432, 121949994896, 29392125448, 4407189232, 390738162, 18698944, 409352, 2880, 2]
14 [797464883328, 3472621138504, 6612469394312, 7184132243148, 4900591810168, 2182116672226, 640454125688, 122517800688, 14803511868, 1067255368, 41681320, 741032, 4148, 2]
15 [7879490670912, 37254146490752, 77785158906816, 93891746528592, 72344864144820, 37156460662120, 12920656349468, 3033212485216, 471682949100, 46828001408, 2791432092, 90262688, 1321236, 5928, 2]
16 [78637981120288, 401348043311030, 912316219589840, 1212262586734760, 1042518094692928, 607935154903192, 245236957948960, 68642939066502, 13192339782984, 1699314550422, 140839104632, 7038105438, 190795704, 2324142, 8476, 2]
17 [791802256587724, 4340336800676672, 10675222938938966, 15494599410575808, 14725776210827768, 9626263521826720, 4430243655855164, 1446168923061600, 333331696491614, 53413238322336, 5786979392946, 405727355808, 17198388966, 395013552, 4045306, 12048, 2]
18 [8035903522911600, 47101053435829508, 124679313703268196, 196369876183437126, 204540064160656464, 148319045221671980, 76835438114477520, 28744151689043140, 7764727573069396, 1500328770725452, 203445285243548, 18777051745768, 1126202614052, 40904332954, 803435220, 6973918, 17156, 2]
19 [82136076173520096, 512756339974789888, 1453966325524323784, 2470756879623489848, 2800738288656543540, 2233089775353441328, 1287816325262611728, 544397941509634992, 169244372709951524, 38502052398514880, 6327405651380180, 735066110823760, 58420816813270, 3026583363016, 95023117368, 1609064696, 11931588, 24312, 2]
20 [844916445207962640, 5598210200483231004, 16934769303425713816, 30894878392421191940, 37881670131293666616, 32963454598153970298, 20967209888034222048, 9900202607901593836, 3490533467305070792, 917461688494002938, 178277645556227544, 25218972280157456, 2536283349953204, 175197745806776, 7906072266064, 216229663002, 3179542784, 20271100, 34540, 2]
# L_n(a) coefficient lists, n <= 12
0 [1]
1 [4]
2 [26, 8, 2]
3 [208, 144, 48]
4 [1846, 2016, 936, 96, 6]
5 [17384, 26000, 16160, 3600, 360]
6 [170036, 323280, 256500, 88640, 14580, 720, 20]
7 [1707584, 3941952, 3839808, 1803200, 436800, 47040, 2240]
8 [17484742, 47506816, 55129312, 32798080, 10725400, 1832320, 155680, 4480, 70]
9 [181726264, 568184544, 767493504, 553783104, 230325984, 54734400, 7190400, 453600, 12600]
10 [1911238636, 6759903600, 10437375420, 8865158400, 4498870320, 1382044608, 253016400, 25804800, 1341900, 25200, 252]
11 [20294936864, 80121456800, 139366172000, 136336178880, 81924416640, 31036465152, 7393182720, 1069252800, 88519200, 3659040, 66528]
12 [217230656956, 946965590208, 1833860428752, 2032088541120, 1413719352540, 639121367808, 189009241344, 35935232256, 4232164860, 286883520, 10078992, 133056, 924]
TOTAL failures: 0
