https://123dok.org/document/q05p0663-write-prolog-program-computes-permutations-list-elements.html