Full Permutations in Combinatorics
- Full permutations are maximal reorderings defined within specific combinatorial frameworks, including full-length multiset arrangements and dynamics in permutation matrices.
- Algorithmic methods such as Rohl’s algorithm and adjacent-transposition Gray codes ensure efficient, complete, and unique generation of these permutations.
- In bootstrap percolation, full permutations refer to matrices that fully mutate to ones, linking to generating functions and optimal traversal on geometric structures.
Searching arXiv for papers related to "full permutations" and adjacent terminology. The expression full permutations is not fully standardized across the combinatorics literature. In algorithmic generation, it commonly denotes permutations of full length—that is, all distinct reorderings of a multiset of size . In other settings, the same adjective is specialized: a permutation matrix may be called full when bootstrap percolation fills the entire board, and a permutation polynomial may be called full-cycle when it induces a single cycle on . Across these usages, the common thread is maximality with respect to the ambient structure: full length, full growth, or full cyclic orbit (Ganapathi et al., 2010, Huibregtse et al., 4 Aug 2025, Cesmelioglu, 2010).
1. Terminological scope
In the algorithmic setting of multiset rearrangements, the relevant problem is to generate all full permutations of length , meaning all distinct reorderings of a multiset
If the multiset contains distinct values , with multiplicities satisfying , then the number of distinct full permutations is
This is the sense used in the combinatorial-generation framework of Rohl’s algorithm and its variants (Ganapathi et al., 2010).
A different, structurally richer use appears in bootstrap percolation on permutation matrices. There, a permutation 0 is called full if, starting from the permutation matrix of 1, the percolation process ends with one single 2 block of 3’s; equivalently, every zero eventually mutates (Huibregtse et al., 4 Aug 2025). This definition is not about exhaustive rearrangement of symbols, but about a dynamical property of the matrix representation of a permutation.
A third use occurs in finite-field permutation polynomials. A full-cycle permutation polynomial is one whose induced permutation on 4 is a single 5-cycle. In that setting, “full” modifies the cycle structure rather than the support or matrix growth (Cesmelioglu, 2010).
This suggests that the phrase is best treated as a family of context-dependent technical terms rather than a single invariant notion.
2. Full permutations as distinct reorderings of multisets
For a multiset input, the basic objective is to output each distinct arrangement exactly once. Rohl’s algorithm does this by separating the distinct values from their multiplicities. It maintains an array 6 of distinct values in some imposed order, a count array Count[1..p] with
7
and an output array 8 that is filled recursively (Ganapathi et al., 2010).
The recursive procedure chooses, at each position 9, one of the 0 distinct values whose remaining count is positive, writes it into 1, decrements the corresponding count, recurses, and then restores the count on backtracking. The construction is therefore multiplicity-aware from the outset, so duplicate outputs never arise from repeated symbols (Ganapathi et al., 2010).
The correctness argument has three components. Validity follows because a value 2 is used only when 3, so no symbol can appear more times than its multiplicity. Uniqueness follows because each recursive path is determined by the sequence of indices chosen, and different such paths yield different outputs. Completeness follows because the recursion explores every feasible sequence of multiplicity-respecting choices until 4, at which point a full assignment is printed (Ganapathi et al., 2010).
The worked example
5
has initial count vector 6 and produces 7 distinct full permutations, matching
8
The resulting outputs include 9, 0, 1, and continue through 2 (Ganapathi et al., 2010).
3. Generation frameworks on ordinary permutations
When repetitions are absent, full permutations coincide with the symmetric group 3. In the permutation-language framework, the alphabet is
4
and a permutation 5 is encoded in one-line notation as the word
6
with 7 and no repetition. The associated permutation language is
8
This furnishes a formal grammar for recursively generating all permutations via insertion and removal operators (Hartung et al., 2019).
The insertion operators are
9
and the removal operator is
0
where 1. These operators support recursive constructions in which permutations of size 2 are obtained as children of permutations of size 3 (Hartung et al., 2019).
The central generation procedure is the greedy minimal-jump algorithm 4. Starting from the seed 5, it repeatedly considers values 6 from 7 down to 8, finds the unique minimal jump of value 9 that yields an unvisited permutation in the language, and visits the resulting word. Jumps are cyclic rotations of substrings; for ordinary permutations this mechanism specializes to adjacent-transposition Gray coding (Hartung et al., 2019).
A key transition rule is given explicitly. If
0
with 1, then a right jump by 2 steps is
3
For 4, each jump of the largest feasible value is by exactly one position, so the move is an adjacent swap. In this specialization, the method reproduces the Steinhaus–Johnson–Trotter order (Hartung et al., 2019).
The implementation uses 5 extra space and achieves 6 amortized time per new permutation. The space bound comes from storing the current permutation in an array pos[1…n] giving positions of values, together with an inversion-count or adjacent-link structure. The time bound follows from maintaining, for each value 7, its current neighbors to the left and right, so that only a local neighborhood changes under each swap (Hartung et al., 2019).
4. Hamiltonicity, Gray codes, and structural optimality
The permutation-language framework does more than enumerate 8; it realizes the enumeration geometrically on the permutahedron. The permutahedron 9 is the convex hull of the 0 points 1 for 2, and its 3-skeleton has vertices 4 with edges joining permutations that differ by one adjacent transposition (Hartung et al., 2019).
Because the listing produced by Algorithm 5 visits every permutation exactly once and moves only along adjacent-transposition edges, it is a Hamiltonian path on the graph 6. In polytopal notation,
7
The inductive proof lifts a Hamiltonian path on 8 through alternating child sequences 9, arranged in zigzag order, and then stitches the lifted paths into a single Hamiltonian path on 0 (Hartung et al., 2019).
This Hamiltonian-path interpretation supplies what the source explicitly calls a provable notion of optimality for the Gray codes obtained from the framework: they translate into walks along the edges of a polytope (Hartung et al., 2019). For full permutations in the ordinary 1 sense, the Gray code is therefore not merely an ordering but a combinatorially and geometrically structured traversal.
The same framework also supports loopless implementation by maintaining an array of active jump directions, yielding worst-case 2 per new permutation, and it extends to prefix-rotation Gray codes and pattern-restricted permutation languages (Hartung et al., 2019). These extensions show that the exhaustive generation of full permutations sits inside a larger language-theoretic program for combinatorial generation.
5. Full permutations under bootstrap percolation
In the bootstrap-percolation setting, the initial object is the permutation matrix of 3: the unique 4 in row 5 lies in column 6. A zero cell 7 is mutable if at least two of its four cardinal neighbors contain 8, and when mutable it is changed from 9 to 0. Iterating this update yields a final configuration 1, and the order of mutations does not affect the terminal outcome (Huibregtse et al., 4 Aug 2025).
A permutation is full when the percolation ends with one single 2 block of 3’s. Equivalently, every zero eventually mutates (Huibregtse et al., 4 Aug 2025). For example, 4 is full, while 5 is a no-growth permutation (Huibregtse et al., 4 Aug 2025).
The number 6 of full permutations in 7 satisfies
8
where 9 is the 0st large Schröder number. The generating function is stated as
1
and
2
The Schröder recurrence appears in the form
3
and is recovered combinatorially from the structure of full permutations (Huibregtse et al., 4 Aug 2025).
A central structural tool is indecomposability. A permutation 4 is indecomposable if no prefix 5 is itself a permutation of 6. Writing 7 for the number of full indecomposable permutations, the paper proves the half-lemma
8
The proof uses reversal
9
which preserves fullness and interchanges indecomposable and decomposable full permutations (Huibregtse et al., 4 Aug 2025).
This use of “full permutation” differs fundamentally from the generation sense. Here fullness is a global growth property of the matrix under a local mutation rule, not an indication that all positions are occupied by a permutation word of maximal length.
6. Related notions: full cycles, containment, and prolificity
A neighboring but distinct notion is the full-cycle permutation polynomial over 00, with 01 an odd prime. Under the isomorphism between the group of permutation polynomials over 02 and the symmetric group 03, a polynomial is full-cycle precisely when it induces a single 04-cycle. Every such polynomial is conjugate to
05
and Çeşmelioğlu’s characterization gives an explicit Carlitz-type form for all of them (Cesmelioglu, 2010). This is a cycle-theoretic use of “full,” not a use tied to exhaustive listing or bootstrap growth.
The literature on universal containment raises a different extremal perspective. A word over 06 containing every permutation of length 07 as a contiguous factor is an 08-superpermutation, while a word over 09 containing every permutation of length 10 as an order-isomorphic subsequence is an 11-superpattern (Engen et al., 2018). These objects are not full permutations themselves; rather, they are ambient words containing all permutations. The distinction matters because “containing all permutations” concerns universal hosts rather than permutation objects with a fullness property.
A further adjacent notion is 12-prolificity. A permutation 13 is 14-prolific if every 15-pattern obtained by deleting 16 positions is distinct. The classification theorem states that 17 is 18-prolific if and only if its minimum 19 distance between any two plot-points is at least 20, and such permutations exist precisely when
21
Again, this is not a definition of fullness, but it is closely connected to maximal pattern diversity under deletion (Bevan et al., 2016).
These nearby notions help delimit the concept. A full permutation in one paper may mean a full-length multiset arrangement; in another, a matrix that fills under percolation; in another, a permutation polynomial with one full orbit. The surrounding vocabulary—generation, percolation, cycle structure, or pattern containment—determines the intended meaning.
7. Conceptual synthesis
Taken collectively, the arXiv literature shows that full permutations is best understood as a context-sensitive term attached to a maximality condition internal to a specific model. In multiset generation, the maximality is positional: one seeks length-22 reorderings using all available symbols with their full multiplicities (Ganapathi et al., 2010). In permutation-language generation over 23, the same exhaustive scope is encoded as the full language 24, with Gray-code orderings, 25-amortized generation, and Hamiltonian paths on the permutahedron (Hartung et al., 2019). In bootstrap percolation, the maximality is dynamical and geometric: the permutation matrix grows to the all-26 matrix, and the resulting counting sequence is the large Schröder numbers (Huibregtse et al., 4 Aug 2025). In permutation polynomials, the maximality is orbital: the induced action is one cycle of length 27 (Cesmelioglu, 2010).
A plausible implication is that the phrase should not be used in isolation when precision matters. For research exposition, the modifier is most informative when anchored explicitly to its ambient structure: full permutations of a multiset, full permutations under bootstrap percolation, or full-cycle permutation polynomials. That practice aligns with the actual distribution of meanings in the literature and reduces the risk of conflating exhaustive generation, dynamical saturation, and cycle-theoretic transitivity.