(I really do not know the "right" historical terminology for talking about this, thus the subject line and the odd intro I am using here.)
In the Tower of Hanoi puzzle, we move a stack of disks from one tower to another, moving only the top piece. But imagine that we could remove the disks in any order we choose, instead of only moving the top piece each time. And, imagine that instead of having three towers we had only two and that we cannot place disks back in the first tower. And, imagine that we have to put each disk down in the second tower in the order that we removed the disk from the first tower. In other words, this is a setup for generating arbitrary permutations. Except, indexing changes as we progress through the permutation. In other words, the indices of the removed disks for each permutation could be generated this way: permh=: (i.1 0)"_`([: ,/ i. ,"0 1/ $:@<:)@.* For example: permh 3 0 0 0 0 1 0 1 0 0 1 1 0 2 0 0 2 1 0 I am wondering if there's a concise way of expressing this using A. (or, some other expression which would eliminate the need to generate all such permutations when finding a specific permutation). Or, failing that, what terms would I search on to find previous work addressing this kind of thinking? Thanks, -- Raul ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm