{"push_id":703785041,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"2028090ce318cb947f399bef26c7303ca64a6286","before":"072c2e12c2d3a8274a8863076f58240f26ab179a","commits":[{"sha":"2028090ce318cb947f399bef26c7303ca64a6286","author":{"email":"ede10f140ad8f5ad90197d17839fb90345d66dd4@informatik.uni-oldenburg.de","name":"Uli Schlachter"},"message":"FindWordsModule: Only print unique words up to some \"symmetry\"\n\nWhen we try to extend the word \"ab\", the words \"cab\" and \"dab\" either are both\nsolvable or neither is, because these are symmetric / isomorphic / replacing\nc->d turns one of them into the other. For speed reasons and for brevity of the\noutput, this commit changes the FindWordsModule so that symmetric words are\nskipped.\n\nThe idea here is that we don't introduce this kinds of symmetries when extending\nwords. Initially, our \"current level\" of words only has one entry and thus\ndoesn't have any \"symmetric\" words. When extending words which letters that\nalready appear in it, the result cannot be symmetric since otherwise the\noriginal words would already be symmetric. Symmetries can only be introduced\nwhen adding new letters which do not yet appear in the word. To avoid these, we\nonly add one new letter to the word and then are done with extending this one\nword.\n\nThanks to Harro Wimmel for this idea.\n\nSigned-off-by: Uli Schlachter <uli.schlachter@informatik.uni-oldenburg.de>","distinct":true,"url":"https://api.github.com/repos/CvO-Theory/apt/commits/2028090ce318cb947f399bef26c7303ca64a6286"}]}