pristine:9fe41634839501c0f12621fa53b5f6a302abf6c0ac77907644698d47522a37cc [Initial commit Ivan.Miljenovic@gmail.com**20101125235340 Ignore-this: 374c8ec3dae3a014957a3cb8f00e5b12 ] hash: 0000002510-58f0c3663c0c16df204a764c3eff43244eea3b5c4b4dc6d851878f7ca091a9f7 [Fix up module name Ivan.Miljenovic@gmail.com**20101129084054 Ignore-this: 35c9a7855cfe315f6a7797da100f989b ] hash: 0000000204-aae1e83c23df4d24d9cd51f386fab984443c6100c0d38c620cafa67cae54b7c1 [Given sub-mobiles, can now create the larger planted mobile Ivan.Miljenovic@gmail.com**20101129084126 Ignore-this: ed3ac137b79366ca36a876b0e36ecf2a ] hash: 0000003138-74ed799f4660f1e4868f231f7470a11b0f28c682357230cbddb03edbc7cbee30 [Fix up (I think) generation of valid degree sequences Ivan.Miljenovic@gmail.com**20101129084138 Ignore-this: 42a187e4ad814ecf77535498e4c0d15f ] hash: 0000000379-c055291b29eba4cda5595aeceaa36bd88f1b1163525d7bf77ae3ef8b21aab42b [Start on recursive sub-mobile generation Ivan.Miljenovic@gmail.com**20101203031336 Ignore-this: 4c7b40970bce7ada6ffd693da8a1dc0d ] hash: 0000001695-01163682515aced07a7900fc46358ce03c96717339c69ed0a8f386d985f97889 [Generate sub-mobiles with black root Ivan.Miljenovic@gmail.com**20101222050852 Ignore-this: 4376b8451bb1570926a3bdc562a33871 Switch from generating planted mobiles to just generating mobiles with a root that doesn't have the full required degree. ] hash: 0000001617-879e49483451ca4681f5fa10c6f7e8c7e4dc67509d0979421bebdbf823f11de5 [Start at an improved validDegreeSequences Ivan.Miljenovic@gmail.com**20101223124942 Ignore-this: cca528175b4cd371f148391e8134d385 * Does not cope with even d yet * Does not deal well with repeated non-1s (e.g. [2,2,1]) ] hash: 0000000890-4fad1ff1e4f7155f13c7070a76f1004d03842baf15fa5ca8d9a734b4cf8f742c [Add uniquePerms Ivan.Miljenovic@gmail.com**20101223125005 Ignore-this: d9af68f770434c2d93a2fa31303b7e8a With helpp from mtnviewmark ] hash: 0000001137-74da9954362705feec66875df3e50bb6c7c0970f7528a2db95221d4da363a0ea [Take permutations of sub-mobiles for black-rooted sub-mobiles Ivan.Miljenovic@gmail.com**20101223125023 Ignore-this: fcc65d0de2e68bb4fc3a762637ca54be ] hash: 0000000365-c0feaeb03f1214432292221c33814828fa9370f007761a08a669ebec1c465307 [This should fix up generating all possible degree sequences Ivan.Miljenovic@gmail.com**20110505234230 Ignore-this: 43eba71f70ddf56d373cf319c704159a At least odd ones... have to check later for even ones. ] hash: 0000000390-d0bfce9c7f4f0f77440050762de6700d83a6a406e94d7b07d8f5a5aaba7b342c [Don't use getMobiles Ivan.Miljenovic@gmail.com**20110505234347 Ignore-this: 75d627768c204880d4a4b7c4e154ec56 Get it working _without_ caching first. ] hash: 0000000545-9c81210e70edbaf4fb6122541e9b9c70d3ea939dcb6bf75b0fc3eb5d27fe5a1a [I think Black-rooted submobiles are done now. Ivan.Miljenovic@gmail.com**20110505234414 Ignore-this: 8d6371d3d66c5e976a7c9304887467fd ] hash: 0000001040-9efd19632aee1871ea2c4b9a4ce3afc7e73cafd6238a15fb500e5e9ea9496b85 [Start on white-rooted submobiles Ivan.Miljenovic@gmail.com**20110505234430 Ignore-this: d68d2c457bb7b7c05fe3b34080429e03 ] hash: 0000001027-a7d7bfdb6f487e7b64ae32842d5b7ff42259ea078b4d2a3c0de3fb12ceb13d0b [Generate most mobiles Ivan.Miljenovic@gmail.com**20110511113139 Ignore-this: 76f4dc74e4e0162707a2fa9c8aeee38b Doesn't yet handle even d, or cases where w=d. ] hash: 0000007097-3fe3f9940baadcf918b7a6669cb09c7c6949259b37064bcef7e16488eb94400d [Add visualisation support Ivan.Miljenovic@gmail.com**20110511113211 Ignore-this: 15d1923e9288a9105c93bfb0803426fb ] hash: 0000001652-95481a0f4cbc703fa152aafe0ba57f8d108130f4881d3bc44113fb883de22c56 [Properly generate mobiles when w == d Ivan.Miljenovic@gmail.com**20110512012326 Ignore-this: 1f8b6525a164e4631237cd04653105d0 ] hash: 0000000820-52e7f1d70026ad95cd1b33ec968bc0e1f1411eb450e8183e46ac07cf597bbb7c [Clean up createBSubMobile Ivan.Miljenovic@gmail.com**20110512012450 Ignore-this: 6465d0254c0d12475d46daabb9ada2fd addBud was initially abstracted out for use in genMobile, but even with that not being used this seems to be cleaner. ] hash: 0000001081-517584cadd774754f06acd49366a79deb19c16f6b3baa2f3d41b1b08dc0755fd [Generate b for even d properly Ivan.Miljenovic@gmail.com**20110512012508 Ignore-this: a08f5a538d5a658ab6fe023de3e4d78a ] hash: 0000000372-ae4f71daeae5dcc839dd333b6437d6008841997ff5b36d804366265b148c988f [Generate valid degree sequences for even d Ivan.Miljenovic@gmail.com**20110512012910 Ignore-this: d7f85ff7024c7b1fd6229e2a75f33b7d ] hash: 0000000432-14a160a47a46463c1ed8a65913848171d3397ddddb207b5698489cda2d9f9ece [Fix up labelling on inverse white edges Ivan.Miljenovic@gmail.com**20110512014019 Ignore-this: af6df13f91301fba12297205fde73bb6 ] hash: 0000000267-c855300ff9af466cb989a8d3af054a2b46dd20f71f00a64c35818dc975e49df7 [Only draw one WW edge between two White nodes Ivan.Miljenovic@gmail.com**20110512043914 Ignore-this: 98d6db37902ee6f7990b54b6e8fe53b2 ] hash: 0000000614-96b18f883036a364c81c56b8f30ae58b9d4dea7ded872c86b09773934b7ff915 [Add functionality to split WW edges Ivan.Miljenovic@gmail.com**20110512043927 Ignore-this: 56ee4e798442ae3b2d821fef31247336 ] hash: 0000001344-097c9835b6618f0f87cff9c48ee24f0ae30c51dff56f3b281e95c5b111281de3 [-Wall cleanups Ivan.Miljenovic@gmail.com**20110512045418 Ignore-this: de3b76a2ae300ebc8e4b04dbb28dd31d ] hash: 0000001114-894f373054ff69b31e83cb93ffcc9827d9a7aafca93324500f3c278ad1e7d8c6 [Use the SplitBlack NodeType to make it easier to tell which is which Ivan.Miljenovic@gmail.com**20110513094515 Ignore-this: 42adae1234cf78f93b8786a5c21ce099 ] hash: 0000000965-eca42b7329c4fbeb8b220cfb19efedfc8a28ee9914131db7f7e4b71ced937ba7 [Can now add incoming buds Ivan.Miljenovic@gmail.com**20110513094534 Ignore-this: 7e67409a001dc754949748fb7e27a9e6 ] hash: 0000001325-38f590f3ec691c2ccc91c76a1f83b0ba700319844823ac1df1d61bde6b2ab801 [Notational fixups Ivan.Miljenovic@gmail.com**20110513094547 Ignore-this: 38120e25f29669aad6fd6dde444f4a90 ] hash: 0000000393-827b20abe4493a5068ebd7baa1937011eacaa64e0fbb710af8c23ebaa0ac3adf [Can now join together buds Ivan.Miljenovic@gmail.com**20110517063522 Ignore-this: 83c399aba7f709d332044eecae06e4ec ] hash: 0000002561-98c961fe4c0d7b3ded68878de0c6e6558c01072bf38fd8b16fcc6fbd2ffaa22b [Fix up adding trailing nodes from split white WW edges Ivan.Miljenovic@gmail.com**20110519134753 Ignore-this: ed0e4a2678bb1bab0bd7c5b8d83be252 Location of buds from them wasn't being calculated properly ] hash: 0000002287-acbc9bdc9d869526111a66a48e9f106efd014ebc0e72af3ef7fc5b944b8b0b42 [Also flip remaining outoing buds when joining buds Ivan.Miljenovic@gmail.com**20110519134907 Ignore-this: 2749d0adb96d4a32ba65d9580c9dbb0e ] hash: 0000000605-7b29c58e17b94b384f364e05245cbaac3412a868bf966172c31c959c90ee27b6 [Add deleteWhites Ivan.Miljenovic@gmail.com**20110519135220 Ignore-this: 1906c29c7400616244286a5458cffadf ] hash: 0000000391-4ff5863c4d33998794ae2a00441873535d4521e88430b087928cae0232e3df2c [Fix joinAllBuds Ivan.Miljenovic@gmail.com**20110520041734 Ignore-this: c4b2f9abcd2b41a675f7c08751b940a5 Was creating the edges from the InBud to the OutBud rather than the other way around. ] hash: 0000000913-8f4d3d4d34dc53e91dea2046aff2f6d57d4e301ba769d1cc47bb4f46ce0efddc [Fix up ordering of (WW i) values Ivan.Miljenovic@gmail.com**20110520061804 Ignore-this: bfc3ec1c1700fd274cd54a984eac335f Need to make sure that d == whiteIndegree d m w, for any white node w in m. ] hash: 0000000900-c1256f6f6f1172c7e06eb0f7d65a3b3b2a3a427791304bef1db383e15d0c0738 [Initial working version Ivan.Miljenovic@gmail.com**20110623022400 Ignore-this: f5412101d473039f50a769ad881ad9f5 Lots of changes ] hash: 0000015161-aa46ad65743495e437883e2b4de5265b51035278ceebf418eb8c26cb2b37d0d5 [Remove graphviz usage Ivan.Miljenovic@gmail.com**20110623022457 Ignore-this: 2e069c64190ee88185c38fefe50a1860 ] hash: 0000003924-41c90de42428176a19dced02c68dcd91be94aa63999938a143aa8b390e4d7ae3 [Shift the more maths-y stuff into Common Ivan.Miljenovic@gmail.com**20110623034958 Ignore-this: 8d0dd57b279aa303765ae499a16b37f6 ] hash: 0000005421-2699c7287d1249b2d669284ded6637ad38f0b75392569815e1994a201dff64fb [Add a reminder to stop myself from trying to use a generic InverseOf EdgeType Ivan.Miljenovic@gmail.com**20110623035016 Ignore-this: 41fd37f4ce8bdc5ae84144eae1673c67 ] hash: 0000000290-6427e72d30b116db89a7c37ce7ad835212be03178c7411775488fca9cf4923c5 [Use the Generating Functions to check which (w,b) pairs are valid Ivan.Miljenovic@gmail.com**20110628044859 Ignore-this: 2177337b897eafb8fdc6c7f531b51508 ] hash: 0000006135-51363c4524e0c755553f0503a3084761608fb8dd5acce72c00efed960cb1b904 [Re-organise genSubMobiles Ivan.Miljenovic@gmail.com**20110628061644 Ignore-this: 40062696ec286c1692f2d5ffe48475fb ] hash: 0000006015-4fd20694921264e7de510e44b7147908d42639d4e125e594c73e04bd0d5593f0 [Use Bags for the result of partitioning functions Ivan.Miljenovic@gmail.com**20110628062045 Ignore-this: 6689f81c9c80d18654446ab13142e790 Has a dramatic affect on speed, as in effect the results are all turned into bags anyway ] hash: 0000002097-a6810257ecfa3b9025b2913148514f52b462f77a68f83a5e4f0596762b5c7bfa [Split out State evaluation into a separate function Ivan.Miljenovic@gmail.com**20110630072139 Ignore-this: 2dbd8f7ef3b62d20043f71da0724cc5e Requires re-calculating numB, but should make testing easier ] hash: 0000000516-e1b3b46b61d0e2bbcabda52cc039b9de9015b104cbb1825d7ee7629def53030a [Speed up generating white-rooted sub-mobiles Ivan.Miljenovic@gmail.com**20110630072955 Ignore-this: c3a07d002f99b8b72b24fb70737b510b Now able to: a) partition up the w,b values more efficiently (may still have some backtracking but nowhere near as much) b) Use permutations to only generate each sub-sub-mobile once and then permute rather than generating for each possible position for each possible permutation. ] hash: 0000005205-7539b6c95eec32a3c60c77586ef0ac292f1603014f8b624f64dab7985ddd1625 [Abstract splitICounts and iSubs into separate functions Ivan.Miljenovic@gmail.com**20110630100853 Ignore-this: 2eaef028a3c4d94e5f8ab9513512ac9a Will be used for black-rooted cases as well ] hash: 0000002454-fffeae2bffb4fc597ea615b1d2c6f107b6e29d2da3a4d50b7dc64883a1367e42 [More efficiently partition and permute subs of black-rooted subs Ivan.Miljenovic@gmail.com**20110630102959 Ignore-this: 5e1d0676e0026776558d53063a08578e Doesn't improve efficiency that much, but better than nothing. ] hash: 0000001237-b5b73ada0d7cf4c6715e3c9927d02a3473ce577eeeb08f9026ffd361e608b74c [Fix up maximum black values when finding white subs Ivan.Miljenovic@gmail.com**20110702063048 Ignore-this: 29d1322b34b1745599212a446a16ddbd ] hash: 0000000703-aa0949e3a0871e2228f3ea433ebae5963747c7718847db695ce4fb1a6d8b6dc9 [Include some algorithmic documentation Ivan.Miljenovic@gmail.com**20110702070217 Ignore-this: f3b4ca23c614edebb0a64aa5be180f3c ] hash: 0000002312-bf1ef4b45dc70ac9ec728797613ad863f38af8dc9ebb7a7f1d696c527b59f8c0 [Rather than keep the lookup in the State, define the (I,W,B) predicate up-front Ivan.Miljenovic@gmail.com**20110702070403 Ignore-this: 48007006a1a3cc78d1abd3cbab69a79b ] hash: 0000002300-fc6098f7cd63a8d2ed7c10ab59b98c0abc6fdb088487902fef2d2b7129e75c13 [Make the outer node Node_0 Ivan.Miljenovic@gmail.com**20110702070416 Ignore-this: 74547ff927bdbe76a374d6da38aaad52 ] hash: 0000000292-9b712d89e341a6b80a64331a7a504f7478d52d6a8fa07ae41c215bb67893c92b [Update and un-comment getSubMobiles Ivan.Miljenovic@gmail.com**20110702070506 Ignore-this: 9cc0212d2d057db5f386fd4d5d478920 The caching version of genSubMobiles; doesn't seem to help though ] hash: 0000001096-0ba8e1f721b832cbb77fe304db17b96f76154378b7c95aebadb082c93c5670e6 [Remove unneeded testing functions from Main Ivan.Miljenovic@gmail.com**20110702104022 Ignore-this: 69d7aa681d089140576dcb9d22e4ed5b ] hash: 0000000655-ad637598eaaf5055502d855c0d8c2c7fdeec755922d90ddbf206c00b0099ec16 [Stop using tuples for Mobile and SubMobile Ivan.Miljenovic@gmail.com**20110704055715 Ignore-this: ffcd1be7a6624f2a350d59273fcc5e3e No effect on runtime, but uses a bit less memory (probably from not continually creating new tuples). ] hash: 0000009213-d2bcf726b56be2fb09d5194fca64c83ab63b74e038e7953e213c59e2db0e6965 [Don't need to calculate numB twice in generateMobiles anymore Ivan.Miljenovic@gmail.com**20110704062153 Ignore-this: 5590775f99fd1819a3a31d1e4526b97 ] hash: 0000000209-2781aa3aafa6fcb9778575cb9f36c4801060a90f2659f3cd121f7f478dfd3da0 [Stop overloading variable names for iCounts Ivan.Miljenovic@gmail.com**20110704064049 Ignore-this: 3cfa68fbba12d596d0fface110eeb850 ] hash: 0000001545-59030a544f18a9ec829b210ca9ace799463b068bd67ae17f330f30b20082e2cf [Remove unneeded imports Ivan.Miljenovic@gmail.com**20110704095419 Ignore-this: fde86117204dff77cdf68b2d4df23c72 ] hash: 0000000359-897f6001edf1083e36f088c070646b77e52e97e906709e300a8a664a91c29ccf [Fix up header for Common Ivan.Miljenovic@gmail.com**20110704095001 Ignore-this: a2b2e9074c18f6d23771e1d179cf3886 ] hash: 0000000360-257b7fbd1267c155d54d61715fc2d51812267b19fd7e93daadc14a3cbcd02ec3 [Some re-organisation Ivan.Miljenovic@gmail.com**20110704095013 Ignore-this: 8452800c8cd0c2c0cad9f1d99872196a ] hash: 0000002299-e362bb8edaa38523df782b0244dae3eb0ba8e16cd737b0075010ad52591ecf25 [Use the new unlabel function Ivan.Miljenovic@gmail.com**20110708011410 Ignore-this: a3c4a7cfd5436667448adfff1fbc09c ] hash: 0000000358-d38b26998e5f4c6c0caf060f6f9c18ca16a442df4c5c0a97e9eea8c3f9ed29b1 [Add NFData instances Ivan.Miljenovic@gmail.com**20110708034202 Ignore-this: b85dc49c1209212d95830af74c0ea0b3 ] hash: 0000001060-facd962321cd3137dec1983cbd1a2da1278caf7d6be9d0fc4528d6deb609f7be [Remove useless line from old testing Ivan.Miljenovic@gmail.com**20110708044424 Ignore-this: 47c385a82d1a286a701a04d059a7b449 ] hash: 0000000204-d345f38f8d2aa16e2c597055545fd566a084accffe4fc60f27a2f37152c3620b [Switch to Reader instead of State Ivan.Miljenovic@gmail.com**20110704100447 Ignore-this: 10e366149afa47e4908dcdd946a60bb7 Not actually doing any stateful stuff (caching doesn't really help) and uses less RAM ] hash: 0000001608-de20b934ef392bb39ea30f16c7c3ea8915357c5a21e934a3173b7ecfa5917a4e [Add makeSortedBag to Common Ivan.Miljenovic@gmail.com**20110708062827 Ignore-this: a5715b2128614c5f096c33f53488de94 ] hash: 0000000516-b9cfad942468ed7112347a37e578d6432fc21c1b63c24feacec2915d86971d86 [Switch to using "bud nodes" instead of one Outer face node Ivan.Miljenovic@gmail.com**20110708073122 Ignore-this: f47288824996a4890a563ecf016b4bc7 The Mobile -> DangD functions haven't yet been updated though ] hash: 0000004558-87bcaa1ee35de171cdfc4222e065844478a92b542d15e2388f472be56ba1b16d [Define and use NumWB Ivan.Miljenovic@gmail.com**20110711111536 Ignore-this: 7e8ab6f68397eb1935cb6f214d243146 ] hash: 0000000760-dd3b49d7b0ca9466c99d9500b8b2d2e30e859182d0e771faed166c77745dcf71 [Use makeSortedBag in iSubs Ivan.Miljenovic@gmail.com**20110726083502 Ignore-this: 55a1383d278c560ee57ca2f1016b853a ] hash: 0000000244-552fbccc7440160a6ac9685d64be954b1c5dbcd250a1caa864bdcced178cb987 [Clean up GF Ivan.Miljenovic@gmail.com**20110801111237 Ignore-this: cf001f19865b322854cf47a8bd029200 ] hash: 0000003715-bccbd05bfc03726e2f38b89c44451f0fbd3e4528710781f70b70461cf2bfcb32 [Clean up Common Ivan.Miljenovic@gmail.com**20110801114550 Ignore-this: 5cfca282eab9199d5c4c4e6b15b5d26f Now using multiset-comb, as it seems to be faster for the permutations ] hash: 0000005556-448f8d3d2864d58764103165479d5ab20ace952fea0f433b7247087edcf725e6 [Forgot to un-export a function that no longer exists Ivan.Miljenovic@gmail.com**20110801114912 Ignore-this: 2c17fb0f85e411ccee14f3d0f22aa81c ] hash: 0000000230-4658451f0fe3ae1692522fcdd30f438855b1fedb638dfd175c9386fc1e4fe873 [Greatly improved performance now Ivan.Miljenovic@gmail.com**20110802054050 Ignore-this: 3e93a9120e6e235bb7b4e2b535917729 Also takes care of updating DangD to reflect changes in GF and Common ] hash: 0000004232-7a96114ba9f915d817b875b68882dc7c58cdaf75b624348f4054182702d10e51 [Forgot to change one bit to using Multiset Ivan.Miljenovic@gmail.com**20110802115050 Ignore-this: de327f9e738a8f01a645abbc00b4bfca ] hash: 0000000320-99c6aafa6fb988417e2ff2c2595c3b931c9345e4fbaaf05c9eb71ecb7b91411a [Forgot to change one bit to using Multiset Ivan Lazar Miljenovic **20110924100523 Ignore-this: 8d88602ba36f7a77e53a6612cc553f77 ] hash: 0000000542-da59d6c836d14c365bd946a0734be09ef7f514867031a3a75b1ab085fb2e2a65 [Add -rtsopts when profiling Ivan Lazar Miljenovic **20110924101036 Ignore-this: c01d68e2ced53f3923d86e66768370d8 ] hash: 0000000268-3ee0f96f3329eeaa84a0e7f48136fdcb7298e7b911818f3a70ac454001ebf395 [Just generate mobiles for now Ivan Lazar Miljenovic **20110924101142 Ignore-this: 26ffd06af50d92f2c8f11531eadbf147 ] hash: 0000000935-2763394fe9c2a5790314d35414ef37dc1528ec2f85446cba26435a37197ed37f [Add TODO Ivan Lazar Miljenovic **20110926033935 Ignore-this: 750a0dea29ca5dab42c3f8d4697cc1f7 Just so I remember what I have to do to finish this ] hash: 0000002576-fa3ca20a8b95a4160fdf4f6d7e209a5df1c4b55a40117e35ca505f9034b94e34 [Don't generate mobiles that are the same but with different marked buds Ivan Lazar Miljenovic **20110926040427 Ignore-this: 7eeafd3841cc6aebda9b4b74347d41e1 ] hash: 0000002577-b48c15b73420c0a1cb7ad3e7bd9af802f31c935d9a40a7d349b4dba4358e4108 [Standardise adding B -- W edges Ivan Lazar Miljenovic **20110926070404 Ignore-this: cb2ed15667170ebf2bc28e5191bf5543 ] hash: 0000001174-b091ed198c3c1a9ee296ca6e6f5ad8e5c909940ce1f236a6ac197b65ca842d2e [Split whites and add incoming buds whenever doing a W -- B edge Ivan Lazar Miljenovic **20110926072939 Ignore-this: 4d8dda70917c9f61e691cc537ff71af6 ] hash: 0000001916-f02141f4860f11f00a1ff6a9e3e26ede3d1da37072dcb3f7935f0ea59c1fc0b1 [Do bud-matching Ivan Lazar Miljenovic **20111002114526 Ignore-this: f7ec7c92eb02f14781cad71adcb80e10 ] hash: 0000015150-e358f511b475694ad5be8c68df1549aef5c33835e0caba584838b61a9daea099 [-Wall cleanups Ivan Lazar Miljenovic **20111002114534 Ignore-this: 7fe3236ad73b517a16b5742f02c770be ] hash: 0000001003-ad94abbc84c8d92c20c2760a0fd58a9d1d1b3501f7c7884583b67c2da10ff65b [Add some notes for future investigations to TODO Ivan Lazar Miljenovic **20111002114546 Ignore-this: 6df47bfd979855ab8f92981604164c3b ] hash: 0000000332-18a956ba1bd39bcf3484ea9b4fafe5af58e64caeb32d7b4dd51ebf24250a7efa [Filter out mobiles with >= incoming nodes than outgoing buds on marked node Ivan Lazar Miljenovic **20111002124048 Ignore-this: 25aa4c2168fa63d6345436aba9a9e45e This means we don't have to do the extra matchings, etc. before removing them. ] hash: 0000002491-db4f4e695eb53bf3cf3c416063af97a069291c987ea0e2fbd7a737413300047e [Now generate DangDs again, much more efficiently! Ivan Lazar Miljenovic **20111101133758 Ignore-this: 5cccccdbd6c1f51a340ff6dcc1278b5c No need for labels, etc.; the only "useless" nodes are the ones representing buds. ] hash: 0000017239-667f72c57c291405e183e45a7edcf8fa0b6c6a928408d5548c1078f9675ce65c [Clarify what the returned Int from generateBlackSubMobiles is for Ivan Lazar Miljenovic **20111102091900 Ignore-this: 28697ae46ddc655827add73dec7f657a The change for the singleton case shouldn't make a difference. ] hash: 0000000703-72064950c22221298fe439fc2b8db1f697544652f4340e2cda6a432a9aaf4599 [Shove getWSubs to be part of genWhiteSubMobile again Ivan Lazar Miljenovic **20111102092044 Ignore-this: 341198b73ca631f4d5fe8a59246d935 Was taken out for debugging purposes, never put back in again ] hash: 0000000859-5ebe794ba26fda21d9963ac8357b31be0019eb175b70339082deafde9fde8f34 [Upgrade to HaskellForMaths 0.4.* Ivan.Miljenovic@gmail.com**20111115050330 Ignore-this: 78b47c8e0a8147f4d05609ddf2133906 ] hash: 0000001872-532ebda7b65692bae4a8dc93ba4017002850aee953b557d44da8b450ac4304cb [Switch to Tree-based permutations Ivan.Miljenovic@gmail.com**20111123035306 Ignore-this: 3fb090ae63fbab931c7e6aafa678e35d Very slightly slower on the (5,17) case, but should scale better for larger cases and make pruning as we go easier. ] hash: 0000009859-726382af30046d1dd387b5865d73cb7dcf47b659b2122ccef03b234042485a68 [For the first black node, start the children list with a bud Ivan Lazar Miljenovic **20111123195954 Ignore-this: c5207d058fa74be889849450fd70b55c ] hash: 0000001547-81d160f6137fd30148a05fc22b631a5fcebecd85c210226a77a03e56bdcc3fb3 [No longer use validWB Ivan.Miljenovic@gmail.com**20111130034537 Ignore-this: 4fc0d295f59a09c6dc88ded59ba00829 ] hash: 0000000397-113f91a2f7c9d8154f1758a7d7f9b441ae2f016e7bcbb64d1a89dcd8f16cf28a [More cleverly generate top-level sub-mobiles Ivan.Miljenovic@gmail.com**20111213100409 Ignore-this: c70814d0ef6182ce0b8cc6dece69020c This is from the pruning experiment ] hash: 0000004878-77759d75cecead7d59261718d6dad6e24c38972a6945ced3ccaba38f0e879016 [Use new version of data-clist Ivan Lazar Miljenovic **20120326105923 Ignore-this: e60f40f988ea7e59155cfdd67cfeae03 ] hash: 0000000257-7c3a29f27f67b0d0ad1bb83c5c5b34ddf316e2d17d7f23dfd317bdd51120add9 [Don't be dodgy when taking the dual Ivan Lazar Miljenovic **20120403072813 Ignore-this: 9fd82e9e6b4c5326bd3f01a9ca2f240f ] hash: 0000000829-a507f30db58ebdd1996032b9128b6631049b19ed9f1bce1b329cc6af621c68de [Export GF in case someone wants to determine this themselves Ivan Lazar Miljenovic **20120403073806 Ignore-this: 2d2e5464241e826193bd623d0594135a ] hash: 0000000318-3cfb19aafd4ae3166785d63694765828ea22aeaf7770b1dbadb2c1787b120548 [Explicit exports and better documentation Ivan Lazar Miljenovic **20120403073824 Ignore-this: efc4cd32446ea5ffab6ceded078d2f7d ] hash: 0000001635-85527fe62ab2a28e402fd7db5e8d51fea8e056f9e81b75da35178844cfa6a79c [Shift from Data.* to Math.Combinatorics.* Ivan Lazar Miljenovic **20120403075317 Ignore-this: 30b9dee906961b58e3011f4e5643dd65 Makes more sense as this isn't defining a new data-structure ] hash: 0000002210-ce80956e4272cd46fa68448556c94db2cc23a006576e117eacbf4144537b7ffb [Add in the paper definition of splitWCounts for comparison purposes Ivan Lazar Miljenovic **20120403082526 Ignore-this: 20efd4ad3973255931b29d8be18065d ] hash: 0000001098-5ef15c512ecf587cad15d79a5e234febb7558c0791bbad210d377dafd9a91a1e [Uncomment the definition of partitionLength for when m = 1 Ivan Lazar Miljenovic **20120403082549 Ignore-this: 73ec77914c034bb056edbf4d028db2cb ] hash: 0000000471-b8d1f19adb0f8b8b1bfdee388f508c5cfd0d2bdb57259422e26fd56c785878d5 [planar-graph renamed the edges function to halfEdges Ivan Lazar Miljenovic **20120405083035 Ignore-this: 5eb5cd94d824c7d050b6fb970a7e72a5 ] hash: 0000000323-4664ff996618a4c082301000e64875cd1158bd943bf8fc217c0bf9df0a3d588f [We have a type alias for DangD, why not use it? Ivan Lazar Miljenovic **20120406101903 Ignore-this: 2abb8fedf60a61f5337a7dfeb16bb9c4 ] hash: 0000000318-676cddcf3ae948f315394ad06e38924ffde8c213c0e70c42d619af5fce1c91c3 [Allow transformers-0.3.* Ivan Lazar Miljenovic **20120709005856 Ignore-this: a9e2427320adc1dc26789168ece2557c ] hash: 0000000259-f992979430962da7f14f95e1b6992f251c129854f4fcc6653b6d2b0c3c67918b [Change to using Cabal-1.14 Ivan Lazar Miljenovic **20120717063558 Ignore-this: 64a94f375c7a8a46ce11034073777ba2 ] hash: 0000000544-1f19afe8cf323547a8dd948596ce55a13b0ee8a42246eb4d9d57096637fb9b53 [Add .ghci file Ivan Lazar Miljenovic **20120717225551 Ignore-this: dfed163ba9a29c545161dacbaa8238d7 ] hash: 0000000219-c89ff1c7db9ec70ae1163649125cc634f2925a4aaddfe095b32182d8c526f3fd [Use library for Main.hs Ivan Lazar Miljenovic **20120718012010 Ignore-this: 55117dce161d11c02194ac0c0937ea67 ] hash: 0000000552-809225d9a14f63a7feb4ed78b608a1512c8f15ad96a999a5dccaf66b1f110d25 [Be more descriptive in failure cases of (d,n) Ivan Lazar Miljenovic **20120718012048 Ignore-this: d3904b149e3dd9928d6f18da2af495e4 ] hash: 0000000668-f237457cc4657667dbbb44251a1a7979c85eecfc86a3e49b1f119a327a9391b2 [Remove commented-out var definition Ivan Lazar Miljenovic **20120718012131 Ignore-this: 16c4ea1d1c27df44b42ffd0b0c80851 ] hash: 0000000283-f9228e159606aca52282877a91cd3cc8df19652db051e2215fc5cf61ae402863 [Add benchmarking script Ivan Lazar Miljenovic **20120718012227 Ignore-this: dddfc43c149217e6e60c2a1bda2629f8 Tests time for generation, not I/O ] hash: 0000001732-4728da9d7283e1e07f025fff44684b231136678b9ee410d9c1e8340b89f13a6d [The two solutions for b are identical Ivan Lazar Miljenovic **20121010033941 Ignore-this: 1df6fb5c7910aca1f98e9d6b7deece8 ] hash: 0000000690-28cd04ffb06f2ff657552ebd2e62ede5b9221e5b42cecdf08eb1a681c42db9ce [Add working basis of Haskell vs C benchmark Ivan Lazar Miljenovic **20121017111031 Ignore-this: 893665c0a7e662d84814704b5523db09 ] hash: 0000015609-e92ce01e46828a57c23c92e538e0cb421c51b98cf37010c119b7ecb1a0460025 [Bang SolvedGF Ivan Lazar Miljenovic **20121017111048 Ignore-this: 83159efc9a9904dd40379de423efb972 Probably not needed, but can't hurt. ] hash: 0000000642-435ea3a7bcd215fc05db483c90758bdbf01d11cd8b950c342747b11875256b54 [Snapshot current state of C vs Haskell benchmark Ivan Lazar Miljenovic **20121022035214 Ignore-this: e682960e68bb22eca0f954fbd8b1469 Even if it _is_ segfaulting... :s ] hash: 0000031104-aaadc0d2aa9e959ee8d05f89e11fab0d9d77ee84dba8b8f7635761efa6a189de [Start again on FFI, using intermediary types Ivan Lazar Miljenovic **20121024035536 Ignore-this: 63b7134f0f157f1aca96a04e0fa19ba8 ] hash: 0000011540-a5e99226dc5d2e77e4e56d0f05617350a6bf58ebf8064737cd9a25dac629854f [Peek still doesn't work Ivan Lazar Miljenovic **20121025014403 Ignore-this: ec78eb1d0e47137497288408bbf4c61d ] hash: 0000010848-a49555ccbd3108c9c712b4adcdbe25436309f7ee15fc6524fc0ddaf2060246a1 [Allow building on GHC-7.6.1 Ivan Lazar Miljenovic **20121107002302 Ignore-this: 6a69585707e54eb4fef4e310d308d85e ] hash: 0000000245-6987745df5a88c94df3b6d17464e32619ea495459bfd942f8ac63fcdbd8eb849