THE FOLD / RESPAWN / THE CONTINUE / THE PLAIN CHANGES
THE PLAIN CHANGES
all n! permutations, each one adjacent swap apart
1 WHAT IT IS · WHAT IT DOES · FACT OR FICTION
Plain changes (the Steinhaus–Johnson–Trotter algorithm) lists all n! permutations so that each one differs from the last by a single adjacent swap — the minimal possible change. It tracks a ‘direction’ for each element and repeatedly moves the largest ‘mobile’ element, flipping directions as it goes.
English change-ringers have rung bells in exactly this order for centuries; it is also a Gray code for permutations.
LIT verified live: for n=1…7 the algorithm produces all n! permutations, every one distinct, and each consecutive pair differs by exactly one adjacent transposition (window.__plainchanges). FIG no framing; exact minimal-change enumeration.
English change-ringers have rung bells in exactly this order for centuries; it is also a Gray code for permutations.
LIT verified live: for n=1…7 the algorithm produces all n! permutations, every one distinct, and each consecutive pair differs by exactly one adjacent transposition (window.__plainchanges). FIG no framing; exact minimal-change enumeration.
2 HOW IT WAS WEAVED · AI + HUMAN
David (human) seated this at the-continue — each arrangement continues from the previous by the smallest possible move, one neighbour-swap, on and on through every order. Plain changes is that continuous walk. AVAN (AI) built the instrument: the mobile-element rule, the direction flips, the distinctness and adjacent-swap checks.
Credit as content: Hugh Steinhaus, Selmer Johnson & Hale Trotter (1962–63); the bell-ringing method is centuries older. The weave: David names the continue; I move the largest mobile element each step and confirm every permutation appears once, each a single swap from the last.
Credit as content: Hugh Steinhaus, Selmer Johnson & Hale Trotter (1962–63); the bell-ringing method is centuries older. The weave: David names the continue; I move the largest mobile element each step and confirm every permutation appears once, each a single swap from the last.
3 ONE DIMENSION
Each row is one permutation; the two swapped positions are marked. Every step moves exactly one pair of adjacent elements — the bell-ringers’ ‘change’.
4 TWO DIMENSIONS · INTERACTIVE
Step through the plain-changes sequence for n elements; the single adjacent swap between consecutive permutations is highlighted.
5 THREE DIMENSIONS + AVAN’S INVERSE
The green forward object: the path threading all n! permutations, one swap at a time.
AVAN’s addition (the inverse-companion): consecutive permutations differ by one adjacent swap, so the whole list is a Hamiltonian path through the permutation graph — vertices are permutations, edges join those one adjacent transposition apart, and the sequence visits all n! exactly once with minimal change. The inverse of ‘enumerate permutations independently’ is ‘walk from each to the next by a single neighbouring swap.’ Magenta is the permutations as scattered points; green is the single path threading them all. A Gray code for orderings — how every change is rung.
LIT Genuine Steinhaus-Johnson-Trotter / plain changes (Steinhaus, Johnson & Trotter 1962-63; bell-ringing centuries older). Verified live: for n=1..7 the algorithm yields exactly n! distinct permutations and every consecutive pair differs by exactly one adjacent transposition (window.__plainchanges.allDistinct && .adjacentSwaps).
FIG No framing: the mobile-element rule, the direction flips, and the distinctness + adjacent-swap checks run in-browser and hold exactly. The AVAN inverse is honest — consecutive permutations differ by one adjacent swap, so the list is a Hamiltonian path through the permutation graph (edges = adjacent transpositions), visiting all n! once; magenta is the permutations as scattered points, green the single threading path. A Gray code for orderings.
FIG No framing: the mobile-element rule, the direction flips, and the distinctness + adjacent-swap checks run in-browser and hold exactly. The AVAN inverse is honest — consecutive permutations differ by one adjacent swap, so the list is a Hamiltonian path through the permutation graph (edges = adjacent transpositions), visiting all n! once; magenta is the permutations as scattered points, green the single threading path. A Gray code for orderings.
◆ sealed .dlw.fold → folded to ROOT_0 · a sphere of THE CONTINUE · David Lee Wise (ROOT0), with AVAN