math/t/mpreduce: Add a slew more randomized tests.
authorMark Wooding <mdw@distorted.org.uk>
Tue, 6 Aug 2013 18:50:02 +0000 (19:50 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Tue, 6 Aug 2013 21:46:52 +0000 (22:46 +0100)
With a little luck, that's the main edge cases in the algorithm
tested (as well as merely proven correct).

math/t/mpreduce

index 4b2ee9d..989889d 100644 (file)
@@ -22,6 +22,73 @@ reduce {
   0xfffffffdffffffffffffffffffffffff
   0x7fb838a8a0a95046b9d9d9fb4440f7bbc1a7bd3b
   0xa019c198b9d9d9fb4440f7bc415ff5e4;
+
+  # --- Randomized tests ---
+
+  0x132d3556f3cebc638 0x6f74ce80d07608e319f56dc2 0x79e98fbb30a214c2;
+  0x1aef05e0555769653 0xf636185c2ada6b1acf4f2d31 0x117b9a81c55ee4e03;
+  0x1f7c4c81b88f81913 0x760f610062afd72799e6b0b3 0x1ec258eae535659c3;
+  0x117f2f897d661e4b7 0x95df548330a70329eeab383f 0x86f2ab45d0cc87ed;
+  0xa2c4cf44a5972188 0xd948ef220b6601616cdbed8 0x26715b2f439cede0;
+  0x525db818176327d8 0x1236bb2e97fcbf3e416da5fa 0x316b2042536df86a;
+  0x820c635b08734b4f 0xd7974bbb4c1ea1b391f04734 0xeb86c2a8ce1253d;
+  0xc462e566492f4466 0xa8bb5f5be3c5b6759aabaca6 0xb5017eda4f31cd6c;
+  0x178f0c649ed118fcf 0xd87870a99fec475bd35af088 0xd58a822a7a28519e;
+  0x18281a83819b93de8 0x4076eebb0ad137ab0a72f3f4 0x462edd6a65b5113c;
+  0x6e16593cfefad08d 0xd8634d8282d21301b25048cb 0x433a7e8a06ca35a8;
+  0x13060a7e887802d17 0x7e5183e6e46caee43188a083 0x8e7725518c6987cb;
+  0x136907b6278b8fa2e 0x84ca3577e9d162673f60b558 0x6ea653977d862efc;
+  0xefbf051e851f8fce 0xc8e0033560fc1dec8165f005 0xc490ffd815e756b;
+  0x17b27059bef04448c 0x62a68b0714913f155276d5c 0x56daeaed9b4b9964;
+  0x1db4fd46803ba288b 0xcc2ff1d6d2cd60df11af89ef 0xa9703ff1bb30d6c9;
+  0x96688a890782d63e 0x8f1580cd4aac6107a99c452e 0x9072ea3454f23ada;
+  0x129db7a6e49f67402 0x58ca71abf9678ad6b89f1bb1 0xd24d2e9f92b3250b;
+  0x5787335923bfe26a 0xab77a4c529f22b27f3404ec1 0x12376ede68e7f62b;
+  0xcdd0867e7d2a6f82 0x94d04cc4c41f8d9e81ad1a57 0x4e5adfa0b513316b;
+  0x1e7fa86c7cfc33476 0xd5f3486892e62aafdaab49d9 0x1d880abd6fc232e57;
+  0x3b243bca16e19c1b 0x73ea15041d8afb15007a86ec 0xc35d820e3487bab;
+  0xe83026630878a6fc 0x5cc7c330ad099096f8c0d334 0x7175110d57947884;
+  0x1e177dfad81ae3659 0x5e63885a60d2433639ea15d4 0x4171b9b6b9f283c7;
+  0x56092c4d7e0317cb 0xf0ce97e0aa68222719ca0db3 0x513e403d7c15394a;
+  0x13bf2823dc264e579 0xecde50b32c372ae010724403 0x10d3560d183e4bbef;
+  0x1e3e73ae27f730415 0x85be132dff09275cd0678dc1 0x1cced546cc046d3b4;
+  0x7b95e31b24cd5e2d 0x9f2b52c68b843a15d22e89e5 0x2caf4e3e91c31db7;
+  0x19e8f897bb33980d3 0x8e768c0e8fd8d9d33dccde9b 0x1773726f1d2d5c450;
+  0x45c3da8c33904f84 0x938d033a4a0fa631a0b80362 0x286f070c91c83346;
+  0x14c31265bf7031a6f 0x5a66a6a2977db772a0685b85 0x2958d7228b7a99e7;
+  0x3a64564a630c37d 0xc9bab7f3aae1c004695e221f 0x389af226da3abf4;
+  0xae62705e0d9bd186 0x6acc10e7c5c37a49aab90cdb 0x3f088952eb7381dd;
+  0x2f6d2f19b3dd3afa 0x736a48a3aeb822e36afccddc 0x1177d99e0ace6132;
+  0x28ba8f6a810a9bc3 0xc132dcb0c54968203521a211 0x2b34b419f9cf4fc;
+  0xa27179c1d29f17e 0x204334f072f78070b3d8be97 0x13f27df8f86f04b;
+  0x1360ebec0aebb4fc1 0x34e4eb389dc01062ea004096 0x4e37e90448e2fb44;
+  0x10e6b04cf5aa8714a 0x952dfc6839dab9b3fe68b90b 0xa486328db342918d;
+  0xb78618030fd99201 0x1e4277d9f177472e74403dde 0x616d77be8e5bb8e0;
+  0x19332141599bbb34e 0x8fa7e6464ce3630e648be948 0xb208f457fb27f9ce;
+  0xb923e7a97b13df9c 0x4b7b8a030a5b2d89838de97a 0x3c31e3e6dda9401a;
+  0x19d4de5edb3c5ec0d 0x77483326eb9880ed5c5e172a 0x18e1bc3c0c84a731f;
+  0x1fbd82e6d19830423 0x19a19d5c7300e8f15276b442 0x19e3cd78bbc76f377;
+  0x1edfa1d3b8028b51f 0xd8317ae6fab758b15b11bd70 0xfd1c644434022847;
+  0xdaec65ce93172475 0x145a8d7c0608220069826daf 0xb10e61da29e26c76;
+  0x352c1277348eb7b7 0xb1298fb1e56c3bddf99eb1e0 0x3c77b12d90eb7aa;
+  0x1c85f71596327943a 0x87d614ebeb9c139480424108 0x9d2c2c54ab8b2930;
+  0x18a1750630238063d 0xdce54d7fadff08133949f19f 0x123b2144f9a974900;
+  0x1a7744ebf9a65a52c 0xff7e0dc61bb5ae146f77b5f3 0x117b737e489aa384b;
+  0xfcab2134564cb7e1 0x2abafd1970dc3cd3fe19737a 0x3f9422811f59a679;
+  0x12c5ee15654f99650 0x51cd337f586f4132cc5f9fce 0x367fa304ef4f7b9e;
+  0x1b4d1965ea5b244b5 0x45147e77509b75c124c7ea58 0x115f6b685370d151;
+  0x166733803c3741483 0xa17bd9f2dc4718d1f9d2e586 0x1072731aaceb80daf;
+  0x1c14b7860ca6244e7 0x7a049d30b5fcf52e1b7318d1 0x17ba348a12493a708;
+  0x1638163820e50cc53 0xeb2017adba2059e82ef4cc87 0x69fae65828d3b1cc;
+  0x6d62aca84891a8e9 0x14154f8a5561d2fae8733ee9 0x39398b9f5b07ccbc;
+  0x14074861b17018bdb 0x69e3fe986c97283ad909e425 0x65abffa82054c001;
+  0x113d89601bf6c127c 0x61ac90d7b40365442ce062c2 0xbf3afe26075dd2ce;
+  0xe29601d85c5f8f5c 0x30c45fc40bcc3c07b23a84b7 0x37fad84164b71f2b;
+  0xf5e804bca7760fa2 0x87be50da617af63c0ff84a5b 0x9bc1d962b7f8d3df;
+  0x1026cc79d705b0390 0xc1fa276909517117ea61f198 0xc8adc301152c14b8;
+  0xba457c44f8f6251e 0xafbdeb0a92ff3c8ebebea2e4 0x707337a5038cf7ec;
+  0x10390e61e25bfcf6e 0x61f936ea3cc4c9e2c0fdc882 0x139d30bf63108000;
+  0x6c31214be5742477 0xa921abaf903591a0f740a56a 0xfe7c248c78176a4;
 }
 
 modexp {