Fast Fourier Transforms for the Rook Monoid

We define the notion of the Fourier transform for the rook monoid (also called the symmetric inverse semigroup) and provide two efficient divide-and-conquer algorithms (fast Fourier transforms, or FFTs) for computing it. This paper marks the first extension of group FFTs to non-group semigroups.


Introduction
The rook monoid R n , also called the symmetric inverse semigroup, is the set of all partial permutations of {1, . . . , n} under function composition, i.e., it is the semigroup of all bijections between all subsets of {1, . . . , n} under function composition, with the usual rule for composing partial functions. That is, g •f is defined for precisely the elements x for which x ∈ dom(f ) and f (x) ∈ dom(g). It is called the rook monoid because it is isomorphic to the semigroup of all n × n matrices with the property that at most one entry in each row is 1 and at most one entry in each column is 1 (the rest being 0) under multiplication. Such matrices (called rook matrices) correspond to the set of all possible placements of non-attacking rooks on an n × n chessboard. For example, consider the element σ ∈ R 4 defined by σ(2) = 1, σ(4) = 4.
Then, viewed as a partial permutation, σ is where the dash indicates that the above entry is not mapped to anything. As a rook matrix, we have In this paper we define the notion of the Fourier transform for a C-valued function on the rook monoid, and we address the problem of computing it efficiently. We present two distinct fast Fourier transform (FFT) algorithms, both of which make use of tools generalized from group FFT theory [26]. We assume no specialized knowledge. This paper is meant to be readable by group FFT theorists with an interest in semigroups as well as semigroup theorists with an interest in FFTs.
The history of the FFT is an interesting one, beginning, like many subjects in mathematics, with Gauss, who developed the now-classical FFT to efficiently interpolate the orbits of asteroids. This FFT was rediscovered by Cooley and Tukey [6] in 1965 to analyze seismic data. A different FFT was discovered in 1937 by Yates [33], for the analysis of data on factorial designs. The theory of FFTs for Abelian groups reconciles these two FFTs. The first is an FFT on Z/nZ, and the second is an FFT on (Z/2Z) k . From this generalization also grew a theory of FFTs for non-Abelian groups. For example, we now have FFTs on supersolvable groups, FFTs on the symmetric group, FFTs on compact Lie groups, and FFTs on finite groups of Lie type. For a survey of these results, see [26].
We have both theoretical and practical motivations for creating FFT algorithms for the rook monoid. From a theoretical perspective, these FFTs are significant because they are the first examples of FFTs on a non-group semigroup. The rook monoid plays the same role for finite inverse semigroups that the symmetric group S n does for finite groups in terms of Cayley's theorem: every finite inverse semigroup is isomorphic to a sub-semigroup of some rook monoid (see, e.g. [17], p. 36-37), so this makes the rook monoid a natural place to begin extending the theory of FFTs to semigroups. Also, just as groups capture symmetry, inverse semigroups capture partial symmetry. See [16] for more on this idea.
From a practical perspective, partially ranked data occurs naturally, and the rook monoid provides a nice computational framework for analyzing such data. For example, consider voting data in which some voters do not fully rank all candidates. In practice, this may well be the case. For example, in the 1980 American Psychological Association (APA) presidential election, only a third of the voters cast fully ranked ballots [8]. Say f (σ) is the number of voters who submitted a ballot of type σ. For the σ above, f (σ) would represent the number of voters who ranked candidate 2 in the first position, candidate 4 in the fourth position, and didn't bother ranking candidates 1 and 3. The values {f (σ)} make up the dataset. There have been previous attempts at spectral analysis for such datasets. For example, in [8], Diaconis used spectral analysis on symmetric groups to analyze the APA election mentioned above. We propose viewing f as an element of the semigroup algebra CR n , so that spectral analysis of f involves decomposing CR n into its isotypic components by means of an FFT. Things are more complicated than in the group case because CR n has two natural bases. This means that there are two natural ways to view functions on R n as elements of CR n , and therefore two different notions for convolution of such functions. We will address both in this paper.
Partially ranked voting data is also a type of "not missing at random" (NMAR) data. Missing data in a sample is said to be NMAR if it is believed to be missing, at least in part, because of its unobserved value. In the voting example, any ballot that is not fully ranked is considered NMAR, since the voter intentionally left something on the ballot blank. Consumer survey data frequently contains NMAR data. NMAR data contrasts with randomly missing data, which, in the voting example, can be caused by accidentally losing some of the ballots. To date, there doesn't seem to be a standard method for analyzing NMAR data. However, the concept of spectral analysis for the rook monoid immediately applies to any NMAR dataset that can be considered a collection of partial rankings. Since spectral analysis is a model-independent approach, spectral analysis for the rook monoid may go a long way towards creating a standard method for dealing with NMAR data. This paper is organized as follows. Sections 2.1 and 2.2 contain basic definitions and background material about semigroups and the rook monoid. Section 2.3 contains a brief introduction to semigroup representation theory. Sections 2.4 and 2.5 are devoted, respectively, to two important tools in FFT theory: chain-adapted matrix representations and Schur's Lemma, adapted to semigroups.
Section 3 is devoted to basis considerations for semigroup algebras. Section 3.2 defines both natural bases for CR n , and Section 3.3 defines the notion of a Fourier basis. Section 4 defines the Fourier transform.
Section 5 shows how the semigroup algebra CR n decomposes into a product of matrix algebras over group algebras. This has far-reaching implications, some of which are explored in Section 6. Section 6.1 describes explicit matrix representations for R n , Section 6.2 contains an explicit Fourier basis description for CR n , and Section 6.3 contains the Fourier inversion theorem for CR n .
In Section 7, we explain some of the issues that arise when choosing how to associate functions on R n to elements of CR n . As mentioned previously, this is only an issue because CR n has two natural bases. Section 8 contains FFT-specific considerations. Computational complexity for FFTs is defined in Section 8.1. Our algorithms for the FFT on R n use ideas from group FFT theory, which we cover in Sections 8.2 and 8.3. Section 9 contains our better FFT algorithm for R n . It relies heavily on the decomposition described in Section 5 and the results in Sections 6.1 and 8.3. Section 10 contains our other FFT algorithm for R n . The ideas involved are mainly from Sections 2.4, 2.5, and 8.2. While it is not as efficient as the algorithm given in Section 9, it is constructed in an entirely different way. We present this algorithm because the ideas involved may be useful for constructing FFTs on other semigroups.

Definitions for general semigroups
Definition (semigroup). A semigroup is a nonempty set S together with an associative binary operation (which we write multiplicatively).
Definition (inverse semigroup). An inverse semigroup is a semigroup S such that, for each x ∈ S, there is a unique y ∈ S such that xyx = x and yxy = y.
In this case, we write y = x −1 .
We remark that the condition that y be unique is necessary for this definition. An element x ∈ S is said to be regular or Von-Neumann regular if there is at least one y ∈ S satisfying xyx = x and yxy = y, and S is said to be regular if every element of S is regular. Consider the full transformation semigroup X on the set {1, 2, . . . , n}; that is, all maps from {1, 2, . . . , n} to itself under composition. It is easy to see that X is regular, and that (for n ≥ 2) there exist elements x ∈ X for which there are multiple elements y ∈ X satisfying xyx = x and yxy = y. X is therefore not inverse. An equivalent characterization of inverse semigroups (see, e.g. [17]) is as follows.
Definition (inverse semigroup). An inverse semigroup is a semigroup S which is regular and for which all idempotents of S commute.
Definition (semigroup algebra). Let S be a finite semigroup. The semigroup algebra CS is the formal C-span of the symbols {s} s∈S . Multiplication in CS, denoted by * , is given by convolution (i.e., the linear extension of the semigroup operation via the distributive law ): If S is a group, then convolution may be written in the familiar way: Note that convolution here means convolution in the semigroup algebra. We hold off on defining a notion of convolution for functions on S until Section 7. We will use the semigroup algebra convolution to define function convolution once we have defined how to associate functions to elements of the semigroup algebra. It turns out that, unlike in the case of groups, there is in general more than one natural way to associate functions on S to elements of CS because, in general, CS has more than one natural basis.
There are two main types of elements of R n : the elements of rank n (i.e., the permutations) and the elements of rank less than n. In his analysis of the representation theory of R n , Munn [24] introduced what he called cycle-link notation for the elements of R n . As an example, consider the element σ ∈ R 4 σ = 1 2 3 4 3 − 2 4 .
In cycle-link notation, a cycle (a 1 , a 2 , . . . , a k ) means that a 1 → a 2 , a 2 → a 3 , . . . , a k−1 → a k , and a k → a 1 , The element σ, expressed in cycle-link notation, would be [1, 3, 2](4). Note that the cycle-link representation of a permutation always consists of cycles only, and elements of rank less than n always contain links when written in cycle-link notation.
Proof. For an element σ ∈ R n , define γ ∈ R n by dom(γ) = ran(σ), and, for x ∈ dom(γ), It is easy to see that γσγ = γ and σγσ = σ, and that γ is the only element of R n satisfying both equations.

Semigroup Representations
Here we provide a brief introduction to the representation theory of semigroups. For a more complete introduction to this topic, see [25] and [31].
In this paper, we adopt the convention that all maps act on the left of sets, and we only consider left modules. We also only concern ourselves with finite semigroups. For the rest of the paper, every semigroup discussed is understood to be finite. Let S be a semigroup. If S does not have identity, then let S 1 denote S with an identity element added. If S does have identity, then let S 1 = S.
Remark: If S is a group, this definition does not agree with the usual group definition, which requires ρ(e) = 1 ∈ End(V ). Such representations are called unital. However, there is only a trivial difference between a representation and a unital representation of S 1 : a representation is called null if ρ(s) = 0 for all s ∈ S, and every representation of S 1 is either unital, null, or a direct sum of a unital and a null representation ( [25], Fact 1.10).
Definition (semigroup matrix representation). A matrix representation of S is a representation of S with respect to a particular choice of basis for V , i.e., it is a homomorphism from S into the semigroup of dim(V ) × dim(V ) matrices with entries in C under multiplication.
Definition (representation module). A representation module for S is a CSmodule that is also a finite dimensional C-vector space.
Definition (matrix representation of CS). A matrix representation of the semigroup algebra CS is an algebra homomorphism ρ from CS into the matrix algebra M dρ (C).
Given a representation ρ of S, we may create a representation module for S by viewing the underlying vector space V as a CS-module, where the action of S on V is given by ρ, and the action of CS on V is given by the linear extension of ρ. In this case, we call V (as a CS-module) the representation module for ρ. Conversely, given a CS-module V which is also a finite dimensional C-vector space, we may define a representation ρ : S → End(V ) by ρ(s) · v = s · v for all s ∈ S and v ∈ V . In this case, we call ρ the representation associated to V . Furthermore, a matrix representation of CS defines a matrix representation of S by restricting to a basis, and any matrix representation of S extends linearly to a matrix representation of CS. Matrix representations of S and of CS are therefore in one-to-one correspondence, and the notions of representations, matrix representations, and representation modules for S are equivalent. We shall move between these notions freely as needed.
Also, we will often abuse the language and simply refer to a representation or matrix representation ρ of S, where the underlying vector space V is understood.
Definition (irreducible representation). A non-null representation ρ of S is said to be irreducible if the representation module for ρ is non-null and simple. In other words, with respect to no basis does ρ have the form for some representations φ 1 , φ 2 and some matrix-valued function g.
A matrix representation of CS is irreducible if and only if the corresponding matrix representation of S is irreducible.
Definition (equivalence of representations). Given two matrix representations ρ 1 and ρ 2 of S (or of CS), ρ 1 is said to be equivalent to ρ 2 if there exists an invertible matrix A such that Aρ 1 (s)A −1 = ρ 2 (s) for all s ∈ S. Equivalently, two representations of S are equivalent if their representation modules are isomorphic (as CS-modules).

Theorem 2.4 (decomposing representations).
For any S such that CS is semisimple, any representation of S (or of CS) is equivalent to a direct sum of irreducible and null representations of S (resp. CS). Furthermore, there are only finitely many inequivalent, irreducible representations of S (resp. CS).
Proof. The formula (4) is just the C-dimensionality of the algebras appearing in (3).
More generally, we have the following extension of Maschke's theorem.

Adapted Representations
Let X 0 < X 1 < . . . < X n be a chain of semigroups whose semigroup algebras CX i are semisimple. Even if a matrix representation of X i is irreducible, its restriction to X i−1 will typically not be. However, it will be equivalent to (though not necessarily equal to) a direct sum of irreducible and null matrix representations of X i−1 .
Definition (adapted representations). Let Y i be a set of inequivalent, irreducible matrix representations for X i . The collection {Y i } n i=0 is said to be chainadapted to the chain X 0 < X 1 < . . . < X n if, for every i ≥ 1 and every ρ ∈ Y i , ρ| Xi−1 is equal to a direct sum of null representations and matrix representations in Y i−1 . Note that this definition forces the irreducible representations appearing in such a restriction to be equal whenever they are equivalent.
Induction shows that a representation from a chain-adapted set of representations may be restricted further down the chain with the same equality results. In particular, if {Y i } n i=0 is chain-adapted to X 0 < X 1 < . . . < X n , then {Y j } j∈J is chain adapted to < j∈J X j for any nonempty subset J ⊆ {1, . . . , n}.
We shall often simply ask that a complete set of irreducible representations Y n for X n be adapted to the chain X 0 < X 1 < . . . < X n . In this case, the choices of the Y i are understood (and, in fact, are often completely determined) by the choice of Y n .
Remark: Adapted representations are very important in the construction of FFTs (see [27], for example), but the requirement that a set of representations be adapted is in no way limiting. Given any chain X 0 < X 1 < . . . < X n of semigroups whose semigroup algebras CX i are semisimple, a straightforward induction argument shows that a complete set of inequivalent, irreducible, chainadapted matrix representations always exists. Explicitly describing such sets, however, is frequently a challenging endeavor.
Remark: Chain-adapted representations are also sometimes referred to as seminormal or Gelfand-Tsetlin representations.

Schur's Lemma
Schur's Lemma appears in many forms, the most widely recognized probably being the one below. Lemma 2.9 (Schur's Lemma). Let R be a ring and let M, N be simple Rmodules. Then every R-module homomorphism φ : M → N is either 0 or an isomorphism. See, e.g. [11], p. 30-32. For computational purposes, the following (also called Schur's Lemma) is a very useful consequence of Lemma 2.9.
Lemma 2.10 (Schur's Lemma). Suppose that A < B < C are semigroups, that Y A , Y B , and Y C are complete sets of inequivalent, irreducible matrix representations for A, B, C respectively, adapted to the chain, and that CA, CB, and CC are semisimple. Let ρ ∈ Y C . Say ρ| B = ρ 1 ⊕ · · · ⊕ ρ k (with each ρ j either in Y B or, without loss of generality, null of dimension 1 ) and ρ j | A = ρ j 1 ⊕ · · · ⊕ ρ j g(j) (with each ρ j i either in Y A or, again without loss of generality, null of dimension 1 ). Let σ ∈ B such that σ commutes with A. Then ρ(σ) is a block matrix where the λ j a,b are scalars, I is the appropriately-sized identity matrix for the block in which it appears, and the block in position ρ j a , ρ j b is non-zero only if ρ j a and ρ j b are equivalent representations of A. Proof. To prove this, we need only show that ρ j (σ) has the block form indicated above. Let V j be the representation module for ρ j on B. Viewing V j as a CA- , and the V j i are simple CA-modules where the module action on V j i is given by ρ j i . Note that a basis B of V j has already been chosen by virtue of the fact that ρ j is in matrix form, and likewise, bases Since σ commutes with A, we have that, for all v ∈ V j and x ∈ A, i.e., ρ j (σ) is a CA-linear map from V j to itself. Hence ). According to our basis B for V j , we have be given in matrix form with respect to the bases B a , B b . By Lemma 2.9, X is either 0 or an isomorphism (i.e. X is either 0 or ρ j a and ρ j b are equivalent representations of A). Suppose then that X is an isomorphism. The goal, then, is to show that X is a diagonal matrix. Since X is CA-linear, for every Since ρ j a and ρ j b are equivalent, and are either null or part of an adapted set of matrix representations, we have ρ j a = ρ j b , and thus Xρ j a (x) = ρ j a (x)X for all x ∈ CA. Now, either ρ j a is null of dimension 1 (in which case so is ρ j b ), which means that X is 1-dimensional and we're done, or ρ j a is an irreducible representation of A. So, suppose ρ j a is irreducible. Then by Burnside's theorem (Theorem 1.14 of [25]), we have ρ j a (CA) = M |Ba| (C), and therefore (5) says that X is in the center of M |Ba| (C), i.e. X is diagonal.
Remark/Notation: Schur's Lemma says that adapted representations cause the matrix ρ(σ) to be sparse and structured. Under the same hypotheses as above, let M(B, A) be the maximum multiplicity of an irreducible or dimension 1-null representation of A occurring in the restriction, from B to A, of an irreducible representation of B. Since ρ(σ) is a block matrix of the form , and the block ρ j (σ) is of the form where λ j a,b = 0 implies ρ j a and ρ j b are equivalent representations of A, we see that the matrix ρ(σ) contains at most M(B, A) non-zero entries per row and column. The computational implication of Schur's Lemma, then, is that for an arbitrary d ρ × d ρ matrix H, it requires no more than M(B, A)d 2 ρ complex multiplications and additions to perform each of the matrix multiplications ρ(σ)H and Hρ(σ), as opposed to the upper bound of d 3 ρ multiplications and additions that would be necessary if ρ(σ) were arbitrary.

The poset structure of an inverse semigroup
For R n , the idempotents are the restrictions of the identity map. If S is a group, then its poset structure is trivial.
If P is a finite poset, then the zeta function ζ of P is given by Given a poset P , one may define an incidence algebra for P over any ring with identity. The element ζ is invertible in the incidence algebra, and its inverse is called the Möbius function µ. There is a general theory of Möbius inversion for incidence algebras. We will not go into the details here. Rather, we will record only the results that we need. Details may be found in [31].
The Möbius function for R n (over C) is well known [30], [31]. It is

Natural bases for CS
Let S be an inverse semigroup. There are two natural bases for CS (if S is not a group). The first basis is of course {s} s∈S , and multiplication in CS with respect to this basis is just the linear extension of the multiplication in S. To motivate the second basis, recall that every (finite) inverse semigroup is isomorphic to a sub-semigroup of a rook monoid and can therefore be viewed as a collection of partial functions. There is another model for composing partial functions: only allow the composition if the range of the first function "lines up" with the domain of the second. For example, if then the idea is that the composition π • σ is and the composition σ • π is disallowed. The groupoid basis for CS encodes this.
Definition (groupoid basis). Let S be an inverse semigroup. Define, for each s ∈ S, the element ⌊s⌋ ∈ CS by ⌊s⌋ = t∈S:t≤s µ(t, s)t.
Proof. This is [31], Lemma 4.1 and Theorem 4.2, using our convention that maps act on the left of sets.
The viewpoint then is that we have two natural bases for CS, the basis {s} s∈S , and the basis {⌊s⌋} s∈S . Note that, if S is a group, then s = ⌊s⌋ ∈ CS for all s ∈ S.

Fourier bases for CS
Let S be a semigroup such that CS is semisimple. This means that CS decomposes into a direct sum of simple submodules (i.e. left ideals): Let Y be a complete set of inequivalent, irreducible matrix representations of CS. Then, according to Theorem 2.5, is an isomorphism of algebras.
There is a natural basis for the algebra on the right: the set of matrices in the algebra with the property that exactly one entry is 1 (the rest being 0). The inverse image of this set is a basis for CS called the dual matrix coefficient basis for Y, or the Fourier basis for CS according to Y. When we refer to a Fourier basis for CS, we mean any basis of CS that can arise in this manner by choosing an appropriate Y. Note that there is a unique Fourier basis for CS (up to ordering) if and only if every irreducible representation of S has dimension 1 (as is the case for S = Z/nZ, for which the isomorphism (8) is the usual discrete Fourier transform and the associated Fourier basis is the usual basis of exponential functions).
Consider the natural basis for the algebra on the right. The preimage of a single column of these elements from the ρ th block is a basis B for a submodule of CS, and each element of CS acts on B exactly as described by ρ. We therefore have that B is a basis for an irreducible submodule of CS (isomorphic to the representation module for ρ). Since the map above was an isomorphism, the preimages of distinct columns have intersection {0}, and we therefore have the well-known fact: Definition via the isomorphism (8). Equivalently, the Fourier transform of f is the reexpression of f in CS in terms of a Fourier basis for CS.
Let f ∈ CS be given with respect to one of the natural bases, i.e., either f = s∈S f (s)s or f = s∈S f (s) ⌊s⌋. We shall sometimes say "calculating the Fourier transform on CS" to mean calculating the Fourier transform of an arbitrary element f ∈ CS given with respect to one of the natural bases, where the choice of Y is understood.
For ρ ∈ Y,f (ρ) is therefore just the ρ th block in the image of f in the isomorphism (8).
Remark: Since the map in (8) is an isomorphism, it respects multiplication, and hence the Fourier transform turns convolution of elements of CS (1) into multiplication of block-diagonal matrices. It turns convolution into pointwise multiplication if and only if all irreducible representations of S have degree one, which, for example, is the case for S = Z/nZ.

Decomposition of CR n into a matrix algebra over group algebras
Let S be an inverse semigroup. The theorem in this section is a special case of Theorem 4.6 in Steinberg [31], which provides an explicit isomorphism between CS and a direct sum of matrix algebras over group algebras. The groups appearing in the group algebras are the maximal subgroups of S. The purpose of this section is to explain this isomorphism in the case when S = R n . This turns out to be a very important isomorphism for the FFT theory for R n . It allows us to easily describe a complete set of inequivalent, irreducible representations for R n (Section 6.1), it allows us to describe explicit Fourier bases for CR n (Section 6.2), it allows us to easily state the Fourier inversion theorem for CR n (Section 6.3), and it forms the basis for one of our FFT algorithms (Section 9).
Let D k ⊆ CR n be the C-span of {⌊s⌋ : s ∈ R n , rk(s) = k}. By (6), we have that CR n = n i=0 D k , so that the product of two elements in D k is an element of D k , and the product of an element in D i with an element in D j is 0 if i = j.
For k ∈ {0, . . . , n}, we identify S k ⊆ R n with the subgroup of elements of rank k with domain and range equal to {1, . . . , k}. We therefore take S 0 to be the set consisting of the zero map, and S 0 ∼ = S 1 . The following decomposition theorem was implicit in the work of Munn and made explicit in [31], Theorem 4.6.
. . , n} to index the rows and columns of M ( n k ) (CS k ) in such a way that {1, . . . , k} is the first k-set. If A and B are two k-subsets of {1, . . . , n}, let p (A→B) denote the unique order preserving bijection from A to B. Keeping in mind that our maps act on the left of sets, define a map by defining it on a basis element ⌊s⌋: where E ran(s),dom(s) is the n k × n k matrix with a 1 in the ran(s), dom(s) position and 0 elsewhere. Observe that p (ran(s)→{1,...,k}) sp ({1,...,k}→dom(s)) ∈ S k by construction.
It is easy to show that φ is an isomorphism and that φ −1 is induced by Notational remark: For the rest of the paper, if A and B are k-subsets of {1, . . . , n}, then we will denote the unique order preserving bijection from A to B by p (A→B) .
6 Consequences of Theorem 5.1

Explicit matrix representations of CR n
Let G be a finite group. The representations of the matrix algebra M n (CG) were studied as early as 1942 by A.H. Clifford in the context of Brandt groupoids [3].
In the notation of Section 5, we have Given an irreducible matrix representation ρ of S k (or of CS k ), we can "tensor up" to an irreducible matrix representationρ of M ( n k ) (CS k ) and then extendρ to an irreducible matrix representation of CR n by declaring it to be 0 on the other summands. Specifically, for g ∈ S k , Let IRR(S k ) be any complete set of inequivalent, irreducible matrix representations of S k . For ρ 1 , ρ 2 ∈ IRR(S k ), [3] shows thatρ 1 andρ 2 are equivalent if and only if ρ 1 and ρ 2 are equivalent, and that all irreducible matrix representations (up to equivalence) of M dρ (CS k ) are obtained in this manner. Therefore, the distinct irreducible representations of CR n are in one-to-one correspondence with n k=0 IRR(S k ). Many explicit descriptions of IRR(S k ) are known. Two well-known computationally advantageous ones are Young's seminormal and Young's orthogonal forms. A description of the former may be found in [2], and a description of the latter in [9].
To be completely explicit, suppose f ∈ CR n , with f = s∈Rn f (s) ⌊s⌋, and let ρ ∈ IRR(S k ). Thenρ is an irreducible matrix representation of CR n , and We have thus effectively described the irreducible representations of CR n by describing their actions on the {⌊s⌋} basis. We remark that, if desired, one could obtain a description of the irreducible representations of R n by looking at these representations on the {s} basis via (7). We also remark that there are other ways to describe a complete set of inequivalent, irreducible representations for R n that do not involve decomposing it into a sum of matrix algebras over group algebras, or indeed referencing the {⌊s⌋} basis at all. For example, see Grood's description in [12], Halverson's description in [13], or Section 10.2.

Explicit Fourier bases for CR n
Let IRR(S k ) be a complete set of inequivalent, irreducible matrix representations for S k , for k ∈ {0, . . . , n}. For each ρ ∈ IRR(S k ), letρ denote its extension (via the method discussed in Section 6.1) to CR n . We take Y = ρ.
It is now easy to explicitly describe the Fourier basis for CR n according to Y in terms of the natural {⌊s⌋} basis. That is, if B ⊆ CR n is the set of inverse images of the natural basis of ρ∈Y M dρ (C) in the isomorphism We will now describe the coefficients b(s).
We begin by assuming we have an explicit description of a Fourier basis for CS k for each k ∈ {0, . . . , n}. That is, if C is the set of inverse images of the natural basis of the algebra on the right in the isomorphism then, for each c ∈ C, c = x∈S k c(x)x, and we assume that we know the coefficients c(x). They may be found, for example, by using the standard Fourier inversion theorem for groups (Theorem 6.2). Now, fix ρ ∈ IRR(S k ). Fix c i,j ∈ CS k , to be the inverse image in the isomorphism (11) of the element of that is 1 in the i, j position in the ρ block and 0 elsewhere.ρ is a block matrix whose rows and columns are indexed by the k-subsets of {1, . . . , n}, and whose entries are themselves d ρ × d ρ matrices. Call the m th k-set M and the n th k-set N . On the other hand,

The Fourier inversion formula for CR n
We begin by recalling the Fourier inversion theorem for groups.
We now state a preliminary lemma, which is a direct consequence of Theorem 6.2 and Section 6.1. for a unique y ∈ S k . The Proof. For ρ ∈ IRR(S k ) we havê  The Fourier inversion theorem for groups then applies, and yields: Now, let S be any set of inequivalent, irreducible matrix representations for R n . We define some notation before stating the Fourier inversion theorem for CR n .
Let Y be a complete set of inequivalent, irreducible matrix representations for R n induced by k∈{0,...,n} IRR(S k ) in the manner described in Section 6.1. If ρ ∈ IRR(S k ), we have the correspondingρ ∈ Y, which is equivalent to some representation in S, which we denote byρ.
the last equality arising from the similarity-invariance of trace. The theorem now follows from Lemma 6.3.

Associating functions on S to elements of CS
We are now ready to address the issues that arise in choosing how to associate functions on S to elements of the semigroup algebra CS. We also define the Fourier transform and the convolution of functions on S.
Let S be an inverse semigroup. Let f : S → C. Having defined two "natural" bases for CS, we have two natural choices for how to associate f to an element of CS, either f In the first case, which we shall call the semigroup association model, the elements s in CS are associated to the characteristic functions of the elements s ∈ S. In the second case, which we shall call the groupoid association model, the elements ⌊s⌋ in CS are associated to the characteristic functions of the elements s ∈ S. For the case S = R n , what follows is an overview of the considerations one should take into account when choosing which function association model to use. If the groupoid association model is used, then convolution of C-valued functions f, g on R n is defined by their multiplication in CR n with respect to the {⌊s⌋} basis. Specifically, (f * g)(s) = r∈Rn: ran(s)=ran(r) f (r)g(r −1 s).

Consideration 1 (Convolution). Convolution of functions on
Consideration 2 (Inner products). There is a natural inner product for Cvalued functions f, g on R n : It would be nice to use this inner product. Choosing an inner product on functions and an association model induces an inner product on CR n (or equivalently, choosing an inner product on CR n and an association model induces an inner product on functions on R n ). Specifically, if we choose the above inner product, then the semigroup association model induces the inner product < ·, · > 1 on CR n defined by < s, t > 1 = 1 if s = t 0 otherwise, and the groupoid association model induces the inner product < ·, · > 2 on CR n defined by < ⌊s⌋ , ⌊t⌋ > 2 = 1 if ⌊s⌋ = ⌊t⌋ 0 otherwise.
However, choosing the inner product < ·, · > 1 leads to undesirable consequences with regards to the Fourier basis for CR n , as described in Consideration 3. For this reason, if the semigroup association model is used, then it is recommended to take the inner product < ·, · > 2 on CR n and use that to induce an inner product on C-valued functions on R n .
Consideration 3 (Orthogonality of isotypic subspaces of CR n ). Since CR n is semisimple, we have where each L i is simple. Let us group them according to their isomorphism classes: where Y is a complete set of inequivalent, irreducible matrix representations for R n , and Vρ is the sum of all simple submodules of CR n isomorphic to the representation module forρ ∈ Y. The Vρ are called the isotypic subspaces or isotypic submodules of CR n . Note that this decomposition does not depend on the choice of Y. Let v ∈ Vρ, v ′ ∈ Vρ′ . We would like to have an inner product (·, ·) on CR n such that, if Vρ = Vρ′ , then i.e., an inner product under which the isotypic subspaces of CR n are orthogonal. The claim is that < ·, · > 2 accomplishes this, and that < ·, · > 1 in general does not.
Proof. By linearity, it suffices to show this in the case that v and v ′ are Fourier basis elements of CR n . We take Y to be the set induced by k∈{0,...,n} IRR(S k ) in the manner described in Section 6.1, and we assume that v and v ′ are part of a Fourier basis for CR n according to Y. We know that where W ρ contains all the irreducible submodules of CS k isomorphic to the representation module for ρ.
it follows from the discussion in Chapter 2 of [28] that we have [w, w ′ ] = 0. Now, suppose thatρ was induced by ρ ∈ IRR(S k ) and thatρ ′ was induced by ρ ′ ∈ IRR(S j ). By Theorem 6.1, when written in terms of the natural {⌊s⌋} basis, v contains nonzero coefficients only for the elements ⌊s⌋ where s is of rank k, and v ′ contains nonzero coefficients only for the elements ⌊s⌋ where s is of rank j. Thus, if k = j, we have < v, v ′ > 2 = 0. Suppose then that k = j. By Theorem 6.1, we have Now, since Vρ = Vρ′ , we have ρ = ρ ′ , and we therefore note that For convenience, we temporarily denote p ({1,...,k}→B) by p B and p (A→{1,...,k}) by p A . We have Remark 7.2. The isotypic subspaces Vρ need not be orthogonal under the inner product < ·, · > 1 . For example, consider CR 1 , which has two nonisomorphic irreducible representations, each of degree 1, and hence a unique Fourier basis. It decomposes as We have < ⌊Id⌋ , ⌊0⌋ > 1 =< Id − (0), (0) > 1 = −1.

FFT algorithm considerations 8.1 Computational complexity
If G is a finite group, then {g} g∈G indexes the natural basis of CG. If S is an inverse semigroup, then CS has two natural bases, the {s} s∈S basis and the {⌊s⌋} s∈S basis. We therefore define the following two notions of computational complexity for the Fourier transform on CS.
Definition An operation is defined to be a single complex multiplication followed by a complex addition. For the purposes of our analysis, we assume that all representations in Y are precomputed and stored in memory.
If G is a group, the {s} and the {⌊s⌋} bases of CG are identical, so we may drop the superscripts on the complexity notation. For example, Now, let Y be any complete set of inequivalent, irreducible matrix representations for CR n . A naive implementation of the Fourier transform on R n , i.e., computing (12) and (13) directly, gives which, by (4), gives As n grows, this cost quickly becomes prohibitive. For the same reason, we also have C(G) ≤ |G| 2 for any group G, but many families of groups enjoy results along the lines of C(G) = O(|G| log c |G|). Indeed, such upper bounds remain the goal in group FFT theory. There are also groups G for which there currently exist greatly improved (but not O(|G| log c |G|)) algorithms, such as matrix groups over finite fields or, more generally, finite groups of Lie type [27]. It is conjectured that there are universal constants c 1 , c 2 such that for any group G, C(G) ≤ c 1 |G| log c2 |G| [21]. It is currently known that, for example, C(Z/nZ) = O(n log n), C(G) ≤ 8.5|G| log |G| for any supersolvable group G, and C(S n ) = O(|S n | log 2 |S n |) (where S n is the symmetric group on n letters).
See [6], [1], and [18], respectively, for these results, or see Section 8.3 for a description of an O(|S n | log 3 |S n |) FFT on S n .
We now state the main results of this paper.
We prove these results in Sections 9.1 and 9.2, respectively.

FFTs on groups
In this section, we describe a general method used to construct FFTs on groups. This section is basically an elaboration of the main idea in [27], and is included in the interest of keeping this document self-contained. This method is used in the FFT on S n given in Section 8.3 (which itself is used in the FFT for R n given in Section 9). We also will generalize this method directly to create an FFT for R n in Section 10. Let G be a group and let H be a subgroup of G. H partitions G into cosets yH. Let C ⊆ G be a full set of coset representatives for distinct cosets (i.e., G = y∈C yH, and y 1 = y 2 ∈ C ⇒ y 1 H ∩ y 2 H = ∅). Let ρ be a representation of G. Then, since ρ is a homomorphism, we have the factorization where f y (h) = f (yh). Let Y G and Y H be complete sets of irreducible, inequivalent matrix representations for G and H, respectively, adapted to the chain G > H. We would like to computef (ρ) for all ρ ∈ Y G . The idea is that if we already knew all thef y (γ) for all γ in Y H and y ∈ C, then we could construct the inner sums in (14) based on how ρ splits when restricted to H. (To do this in practice for a particular group G, we would need a theorem that says how ρ splits when restricted to H. Such theorems are known as branching theorems.) Since Y H , Y G are adapted, this construction can be done for free, since (say ρ| H = ρ 1 ⊕ · · · ⊕ ρ k ) Then, to finish computingf (ρ), we need to multiply |G| |H| matrices together and add the results. Denote h∈H f y (h)ρ(h) by A y (ρ). Then by choosing our representations Y G , Y H for G and H to be adapted to the chain G > H, we have where M G (C) is the number of operations needed to compute the sums for all ρ ∈ Y G , given the matrices A y (ρ).
M G (C) can be made small by choosing the coset representatives y ∈ C in such a way that ρ(y) is a sparse matrix (or, more generally, can be factored into a small number of sparse matrices).
Of course, this method can be used recursively with a subgroup chain and a corresponding collection of chain-adapted representations, as in [21], [27].

An FFT on the Symmetric Group
In this section, we describe an algorithm to compute the FFT on S n . The FFT algorithm for R n presented in Section 9 explicitly uses FFTs on S n , and ideas from this algorithm are used in the FFT on R n presented in section 10.
Consider S n and the subgroup chain S n > S n−1 > . . . > S 1 = {1}, where S k is identified with the subgroup of S n that fixes the points k + 1, . . . , n. Choose a complete, inequivalent, irreducible set of matrix representations for CS n adapted to this chain and call it Y n . Two well-known choices are Young's orthogonal and Young's seminormal forms (see, for example, [9]). Let t j be the transposition (j − 1, j). Let e denote the identity element of S n . We use the following set of coset representatives: Thus, for example, T 1 = t 2 t 3 . . . t n , T n−1 = t n , and T n = e. We therefore obtain which then implies Once we have calculated all thef Ti on S n−1 , then for any ρ ∈ Y n , we can reconstruct (for free, since we are using chain-adapted matrix representations) the inner sums in (15) based on how ρ splits when restricted to S n−1 . This splitting is described by the branching theorem for S n (see, for example, [9], p. 304).
We now turn to analyzing the M Sn ({T i }) term in (16). Notice that, for j > 2, t j ∈ S j and t j commutes with S j−2 (and t 2 ∈ S 2 and t 2 commutes with S 1 ). It is easy to derive from the combinatorics of Young tableaux (see, for example, [15]) that the maximum multiplicity occurring in the restriction of any irreducible representation of S j to S j−2 is 2. By Schur's Lemma, then, for any j (2 ≤ j ≤ n) and any ρ ∈ Y n , ρ(t j ) contains at most 2 nonzero entries per row and column.
Fix ρ ∈ Y n . Since ρ(T i ) = ρ(t i+1 )ρ(t i+2 ) . . . ρ(t n ), computing ρ(T i )A Ti (ρ) for an arbitrary matrix A Ti (ρ) may be accomplished by multiplying A Ti (ρ) on the left by ρ(t n ), multiplying the result on the left by ρ(t n−1 ), multiplying the result of that on the left by ρ(t n−2 ), etc. It therefore takes a maximum of 2(n − i)d 2 ρ operations to perform the multiplication ρ(T i )A Ti (ρ) (keeping in mind that multiplying by the identity matrix may be done for free), and once ρ(T i )A Ti (ρ) has been computed for all T i , it takes a maximum of (n − 1)d 2 ρ operations to add the results to give n i=1 ρ(T i )A Ti (ρ). Letting ρ vary over Y n , then, implies Putting this together with (16), we obtain: T Yn (S n ) ≤ nT Yn−1 (S n−1 ) + (n 2 − 1)|S n |.
Induction on n then yields Theorem 8.4. T Yn (S n ) ≤ 2 3 n(n + 1) 2 n! This is of order n!(log n!) 3 = |S n | log 3 |S n |. The algorithm described here is the heart of Clausen's FFT on S n [2].
By a more careful analysis of the matrix multiplications involved, Maslen has obtained an algorithm for the FFT on S n of complexity O(|S n | log 2 |S n |) ( 9 An algorithm for the FFT on R n In this section, we present the faster of our two algorithms for the FFT on R n .
In the process, we prove Theorems 8.1 and 8.2.

An FFT for changing from the {⌊s⌋} basis to a Fourier basis
Let f ∈ CR n be an arbitrary element, given with respect to the {⌊s⌋} basis: Let Y k denote Young's seminormal (or orthogonal) matrix representations for S k . For our complete set of inequivalent, irreducible representations for R n , we take the set Y induced by k∈{0,...,n} Y k in the manner described in Section 6.1. Ifρ ∈ Y was induced by ρ ∈ Y k , then we have thatf (ρ) is an n k × n k matrix whose rows and columns are indexed by the k-subsets of {1, . . . , n}, with entries themselves d ρ × d ρ matrices. By Theorem 5.1 and (9), we know that for s ∈ R n , Theorem (Theorem 8.1). C ⌊s⌋ (R n ) ≤ O(|R n | log 2 |R n |).
Proof. By the above algorithm, Since C ⌊s⌋ (R n ) ≤ T ⌊s⌋ Y (R n ), |R n | ≥ n!, and n = O(log(n!)), we are done.

An FFT for changing from the {s} basis to a Fourier basis
Let f ∈ CR n be an arbitrary element, given with respect to the {s} basis: Thanks to the algorithm in Section 9.1, a simple algorithm for calculating the Fourier transform of f is evident: use the set Y of inequivalent, irreducible matrix representations for R n used in Section 9.1, re-express f in terms of the {⌊s⌋} basis, and then run the algorithm in Section 9. operations.
If we consider the matrix that encodes this change of basis (which consists only of 0's and 1's), then (18) is the number of 1's in this matrix, counted row by row, since a row corresponding to an element s ∈ R n of rank k has |R n−k | 1's in it. On the other hand, a column corresponding to an element s ∈ R n of rank k has 2 k 1's in it, so counting column by column, we obtain: Proof. The algorithm in this section consists of two steps: change from the {s} basis to the {⌊s⌋} basis, and then run the algorithm in Section 9.1. Thus For large enough n, we have 2 n ≥ 3 4 n(n − 1) and |R n | ǫ ≥ n! ǫ ≥ 2 n , so Remark: We have developed improved algorithms for the {s} → {⌊s⌋} change of basis, but none yet which are O(|R n | log c |R n |). Also, in Section 10 we exhibit a different algorithm for changing from the {s} basis to a Fourier basis, which avoids the {⌊s⌋} basis entirely. However, it too is a O(|R n | 1+ǫ ) algorithm.
10 Another algorithm for the FFT on R n In this section, we present an algorithm for the FFT on R n that is quite different from the algorithm presented in Section 9. The algorithm in Section 9 involved examining the poset structure of R n , decomposing CR n into matrix algebras over group algebras, using matrix representations for R n induced by computationally advantageous matrix representations of S k , and running FFTs on S k . In contrast, the algorithm in this section directly generalizes the ideas in Sections 8.2 and 8.3. It involves finding a semigroup factorization of R n into "cosets" and using a chain-adapted set of matrix representations to run recursive calculations on the sub-semigroup chain R n > R n−1 > . . . > R 1 . The algorithm in this section computes the Fourier transform of an element in CR n expressed with respect to the {s} basis directly, without referencing the {⌊s⌋} basis. It is not an O(|R n | log c |R n |) algorithm, so we do not consider the {⌊s⌋} → {s} change of basis necessary to run it on the {⌊s⌋} basis. Even for an element expressed with respect to the {s} basis, the algorithm in Section 9 is slightly better. Nevertheless, we present this algorithm because the ideas involved may be helpful for designing FFTs on other inverse semigroups.

Another FFT for changing from the {s} basis to a Fourier basis
Let f ∈ CR n be an arbitrary element, given with respect to the {s} basis: As with the symmetric group (Section 8.3), let t j be the transposition (j − 1, j). We use the following sets of "coset representatives" (we call them "coset representatives" because they play the same role in this FFT as coset representatives do in group FFTs): We use the semigroup chain R n > R n−1 > . . . > R 1 , where Halverson [13] has found a complete set of inequivalent, irreducible matrix representations for R n adapted to this chain. The description may be found in Section 10.2. Call this set Y n . For each ρ ∈ Y n , we must computê A subsemigroup does not necessarily partition its parent semigroup into equally sized cosets, so we cannot directly factor through a subsemigroup as in (14). Instead, we use an approach for R n that is based on the recursive formula (2). With this, we have the following factorization theorem.
Theorem 10.1 (Factorization theorem for R n ). For any representation ρ of R n , if n ≥ 3, we have the following factorization.
As in the group case, we will use the above breakdown to computef (ρ) recursively. If we knew f [n] (γ) for all γ ∈ Y n−1 , f Ti (γ) for all γ ∈ Y n−1 and 1 ≤ i ≤ n, and f T i (γ) for all γ ∈ Y n−1 and 1 ≤ i ≤ n − 1, using (19) we could reassemble them for free, since we are using chain-adapted representations, based on how ρ splits when restricted to R n−1 (see Theorem 10.6) to calculatê f (ρ) for any ρ ∈ Y n . Therefore, we have Lemma. For n ≥ 3, where M Rn is the total number of operations required to compute the sum (19) for all ρ ∈ Y n , given knowledge of the f [n] , all the f Ti , and all the f T i on R n−1 .
We now analyze M Rn to obtain: Proof. To analyze M Rn , let: • M 1 = The maximum number of operations necessary to calculate the matrix product ρ(T i )A Ti (ρ) for arbitrary matrices A Ti (ρ), for all ρ ∈ Y n and for all T i (1 ≤ i ≤ n).
• M 2 = The maximum number of operations necessary to calculate the matrix product A T i (ρ)ρ(T i ) for arbitrary matrices A T i (ρ), for all ρ ∈ Y n and for all T i (1 ≤ i ≤ n − 1).
• M 3 = The maximum number of operations necessary to calculate the matrix product ρ([n])A [n] (ρ) for arbitrary matrices A [n] (ρ), for all ρ ∈ Y n .
• M 4 = The maximum number of operations necessary to add together 2n d ρ × d ρ arbitrary matrices, for all ρ ∈ Y n .
Analysis of M 1 : For each ρ ∈ Y n and each T i , we must perform the multiplication ρ(T i )A Ti (ρ) = ρ(t i+1 )ρ(t i+2 ) . . . ρ(t n )A Ti (ρ) for an arbitrary matrix A Ti (ρ). As was the case with S n , for j > 2, t j ∈ R j , t j commutes with R j−2 , and M(R j , R j−2 ) = 2. By Schur's Lemma, ρ(t j ) (j > 2) contains at most 2 non-zero entries per row and column. For j = 2, t 2 ∈ R 2 , and the maximum dimension of an irreducible representation of R 2 is 2. Therefore, ρ(t 2 ) contains at most 2 non-zero entries per row and column. Alternatively, it is obvious from the description of Y n (see Section 10.2) that ρ(t j ) (j ≥ 2) contains at most 2 nonzero entries per row and column. Therefore, multiplying an arbitrary matrix by ρ(t j ) on the left requires at most 2d 2 ρ operations, and so performing the multiplication ρ(T i )A Ti (ρ) requires at most 2(n − i)d 2 ρ operations. Therefore, we have where the final equality comes from (4).
Analysis of M 2 : The only difference between M 1 and M 2 is that M 2 involves multiplying arbitrary matrices by ρ(T i ) on the right rather than by ρ(T i ) on the left, so M 2 is the same as M 1 in the complexity analysis. Thus Analysis of M 3 : Since [n] ∈ R n , [n] commutes with R n−1 , and M(R n , R n−1 ) = 1, we have that ρ([n]) contains at most 1 non-zero entry per row. Thus Analysis of M 4 : For a particular ρ, the matrix additions can be accomplished with (2n − 1)d 2 ρ operations. Thus Putting this all together, we obtain M Rn ≤ (2(n)(n − 1) + 1 + 2n − 1)|R n | = 2n 2 |R n |.
We now prove that this algorithm gives the complexity result Theorem 10.3. For n ≥ 5, T s Yn (R n ) ≤ 2 n n|R n |.
Proof. Base case: |R 2 | = 7, so a naive implementation of the FFT on R 2 gives T Y2 (R 2 ) ≤ 49. Applying (20) repeatedly, we have This proves the base case.

Chain-adapted matrix representations for R n
In this section, we give a description of a complete set of irreducible, inequivalent, chain-adapted matrix representations for R n relative to the chain R n > R n−1 > . . . > R 1 . The results herein are a special case of the results in [13].
Definition (partition). A partition λ of a nonnegative integer k (written λ ⊢ k) is a weakly decreasing sequence of nonnegative integers whose sum is k. We consider two partitions to be equal if and only if they only differ by the number of 0's they contain, and we identify a partition λ with its Young diagram.
It is well-known that a complete set of inequivalent, irreducible representations for R n is indexed by the set of all partitions of the integers {0, 1, . . . n} (see, for example, [12] or [29]). Therefore, for integers n ≥ 0, let Definition (n-tableau, n-standard tableau). For λ ∈ Λ n , define L to be an n-tableau of shape λ if it is a filling of the diagram for λ with numbers from {1, 2, . . . n} such that each number in L appears at most once. L is an n-standard tableau if, furthermore, the entries in each column of L increase from top to bottom and the entries in each row of L increase from left to right.
Fix λ. Let T λ n denote the set of n-standard tableaux of shape λ. The symmetric group acts on tableaux by permuting their entries. If L is an ntableau, then (i − 1, i)L is the tableau that is obtained from L by replacing i − 1 (if i − 1 ∈ L) with i, and by replacing i (if i ∈ L) with i − 1. Note that L ∈ T λ n need not imply (i − 1, i)L ∈ T λ n . Let {v L : L ∈ T λ n } be a set of independent vectors. We form As such, the symbols v L , for L ∈ T λ n , are a basis for the vector space V λ . Halverson defines an action of R n on V λ in such a way that (extending by linearity) V λ is an irreducible CR n -module and such that, as λ ranges over Λ n , the V λ constitute a complete set of inequivalent, irreducible representation modules for R n . We first describe this action, and we then describe an ordering of the bases for the V λ so that the resulting matrix representations are chainadapted to R n > R n−1 > . . . > R 1 .
Let L ∈ T λ n . If i − 1, i ∈ L, then let L(i − 1) and L(i) denote the box in L containing i − 1 and i, respectively.
To define the action of R n on V λ , it is sufficient to define the action of a set of generators of R n on V λ .
Definition (action of R n on V λ ). Define the action of the transpositions t i = (i − 1, i), for 2 ≤ i ≤ n, as follows: Define the action of the link (1)(2) . . .
Remark: If λ = (0), then V λ is 1-dimensional, and the action of R n on V λ is the trivial action given by xv = v for all x ∈ R n and all v ∈ V λ . Theorem 10.4. As λ varies over all partitions of all nonnegative integers less than or equal to n, the V λ constitute a complete set of irreducible, pairwise non-isomorphic representation modules for R n [13].
Definition (corner of a partition). A corner is a box c of λ for which λ contains no box to the right or below c. In other words, the corners are the possible positions of n in an n-standard tableau of shape λ.
We now record the branching theorem for R n .
Now, for purposes of chain-adaptation, we order the basis {v L } for V λ using the following generalized last-letter ordering.
We begin by partitioning the v L into subsets based on the corners c 1 , . . . , c l of λ. Number the corners from top to bottom. Now, form the sets V λ (0) = {v L : L ∈ T λ n and n / ∈ L}, V λ (i) = {v L : L ∈ T λ n and n ∈ c i of L}, 1 ≤ i ≤ l, and declare elements of V λ (j) to be earlier in the ordering than elements of V λ (k) whenever j < k. To order the subset V λ (k), delete the corner c k (do nothing if k = 0) and repeat the same ordering process (starting by identifying the corners of the resulting partition and partitioning the v L into subsets based on those corners) with n − 1 in place of n, etc.
Remark: If λ ⊢ n, then the generalized last-letter ordering scheme given above reduces to the usual last-letter ordering scheme used for Young's orthogonal and seminormal representations of the symmetric group.
It is now easy to see, under this ordering of the bases for the V λ , that the matrix representations described in this section are chain-adapted to the chain R n > R n−1 > . . . > R 1 . We know, by the branching theorem for R n , how V λ decomposes as a R n−1 module (it decomposes into the C-span of the V λ (k) for 0 ≤ k ≤ l), and it is obvious by the action of R n−1 on V λ that R n−1 C-span(V λ (k)) ⊆ C-span(V λ (k)) for all k. The same argument is used to induct down the chain R n > R n−1 > . . . > R 1 , now, and is trivial because we ordered our basis for V λ inductively according to the same rule. We now restate the branching theorem for R n under our ordering of the bases for the V λ .
Theorem 10.6 (Branching theorem). Let ρ λ be the matrix representation associated to V λ with respect to the basis {v L }, with the basis ordered according to the generalized last-letter ordering. Then where λ −,= is the set of all partitions µ ∈ Λ n−1 such that either µ = λ or µ is obtained by removing a corner from λ. The first µ ∈ λ −,= is the one that removes no corners (if λ n), the next µ is the one that removes the highest corner, the next µ is the one that removes the second highest corner, etc.
Now, let f ∈ CR n be given with respect to the {s} basis. We prove Theorem 10.1. Proof. Let n ≥ 3. We have 3 types of elements s of R n .
• Type 1: Those for which s(n) = i for some 1 ≤ i ≤ n.
• Type 2: Those for which both s(i) = n for some 1 ≤ i ≤ n − 1 and n / ∈ dom(s).
• Type 3: Those for which both s(i) = n for all 1 ≤ i ≤ n and n / ∈ dom(s).
By the argument given in the proof of Theorem 2.2, this counts all elements of R n precisely once. Now, let 1 ≤ i ≤ n. View the "coset representative" T i as a permutation matrix, and view the elements s ∈ R n as rook matrices. Multiplying any matrix X on the left by T i simply moves row j of X to row j + 1 (for all j such that i ≤ j ≤ n − 1) and moves row n of X to row i. Thus, as s varies over R n−1 , T i s varies bijectively over {s ∈ R n : s(n) = i}. Therefore, we have Similarly, multiplying any matrix X on the right by T i moves column j of X to column j + 1 (i ≤ j ≤ n − 1) and moves column n of X to column i. Thus, as s varies over R n−1 , sT i varies bijectively over {s ∈ R n : s(i) = n}. So To ensure that we only count the elements of Type 2, we restrict our attention to 1 ≤ i ≤ n − 1, and we set the function values of the elements of Type 1 appearing in the above sum to 0: Putting this all together, then, we find that for any representation ρ of R n and any n ≥ 3,

Concluding remarks
The extension of FFTs to semigroups creates a new collection of interesting challenges. We remark that many of the ideas in this paper (such as those from [31] and several of the results in this paper that follow from them) can be extended to general inverse semigroups. As with groups, FFT algorithms for inverse semigroups will vary from semigroup to semigroup, but a number of the underlying ideas are the same for any inverse semigroup FFT. These ideas can be cast in a general framework, which we intend to help guide the development of future FFTs, and this general framework is the subject of a paper currently in preparation.
Also, as mentioned previously, spectral analysis for the rook monoid involves projecting a function onto the isotypic subspaces of CR n , which can be accomplished by means of an FFT, and examining the resulting projections. A variety of interesting issues arise in this analysis, and we have worked out a detailed example, consisting of partially ranked voting data on R 5 , to explain them. These results are the subject of a paper currently in preparation.