The quantum Schur transform is a unitary change of basis from the computational product basis to the so-called Schur basis, a basis labeled by the irreducible representations of the symmetric and unitary groups, based on the Schur-Weyl duality in the group representation theory. The latter basis is called the Schur basis. The quantum Schur transform is utilized in several quantum information protocols for optimal purification and spectrum estimation, universal entanglement concentration and source coding, decoherence-free subspaces, sample efficient state tomography, quantum communications without shared reference frame, etc.
Q3 provides two implementations of the quantum Schur transform, following the Bacon-Chuang-Harrow algorithm and the Korvi algorithm, respectively, both are known to exhibit exponential speedup over classical algorithms.
Related articles:
◼
  • Mi-Jung So, Mahn-Soo Choi (2025), Symmetry and Liouville Space Formulation of Decoherence-Free Subsystems, arXiv:2507.15506. https://doi.org/10.48550/arXiv.2507.15506
  • ◼
  • Dongni Chen, Stefano Chesi, Mahn-Soo Choi (2023), Self-Purification and Entanglement Revival in Lambda Matter, arXiv:2309.01054. https://doi.org/10.48550/arXiv.2309.01054
  • This tutorial explains and illustrates the principle behind the Bacon-Chuang-Harrow algorithm.
    Make sure that the
    Q3 package
    is loaded to use the demonstrations in this document:
    In[]:=
    Needs["QuantumMob`Q3`"]

    Young Tableaux, Weyl Tableaux, and GelfandPatterns

    The irreducible representations of the symmetric and unitary groups are conveniently described in terms of Young diagrams and related tableaux and patterns.

    Young Diagrams

    A
    Young diagram
    is a finite collection of boxes (or cells) arranged in left-justified rows, with the row lengths in non-increasing order. Listing the number of boxes in each row gives a partition λ of a non-negative integer n, the total number of boxes of the diagram. That is, for a Young diagram of d rows,
    λ=(
    λ
    1
    ,
    λ
    2
    ,…,
    λ
    d
    )
    with
    λ
    1
    ≥
    λ
    2
    ≥…≥
    λ
    d
    >0
    and
    λ
    1
    +
    λ
    2
    +…+
    λ
    d
    =n
    . Then, the Young diagram is said to be of shape λ and degree
    n
    , and it carries the same information as the corresponding partition.
    For example, consider partitions of
    n=3
    :
    In[]:=
    shapes=IntegerPartitions[3]
    Out[]=
    {{3},{2,1},{1,1,1}}
    The corresponding Young diagrams are as follows:
    In[]:=
    YoungDiagram/@shapes
    Out[]=
    
    ,
    ​
    ,
    
    A Young diagram is also called a
    Ferrers diagram
    , particularly when represented using dots. The Ferrers diagrams of the above example are as follows:
    In[]:=
    FerrersDiagram/@shapes
    Out[]=
    
    ●
    ●
    ●
    ,
    ●
    ●
    ●
    ​
    ,
    ●
    ●
    ●
    
    Conventionally, two shapes λ and λ' are regarded equal when they are different only by trailing zeros. For example,
    λ=(2,1)
    and
    λ'=(2,1,0,0)
    are said to be equal.

    Young Tableaux

    A
    Young tableau
    of shape λ is an array of numbers filling the boxes of the Young diagram of shape λ (or replacing the dots of the Ferrers diagram). For example, here is a Young tableau of shape
    λ=(2,1)
    .
    In[]:=
    YoungForm[{{1,3},{2}}]
    Out[]=
    1
    3
    2
    ​
    A Young tableau is called a standard Young tableau if the entries strictly increasing along each row and column. For example, these are all standard Young tableaux of shape {2,1}.
    In[]:=
    yy=YoungTableaux[{2,1}];​​YoungForm/@yy
    Out[]=
    
    1
    2
    3
    ​
    ,
    1
    3
    2
    ​
    
    On the contrary, this is not a standard Young tableau because two 1s appear in the first row:
    In[]:=
    YoungForm[{{1,1},{2}}]
    Out[]=
    1
    1
    2
    ​

    Weyl Tableaux

    A Young tableau is called a semi-standard Young tableau or
    Weyl tableau
    if the entries weakly increase (i.e., non-decrease) along each row and strictly increase along each column. For example, these are all Weyl tableaux of shape
    λ=(2,1)
    :
    In[]:=
    ww=WeylTableaux[{2,1},3];​​YoungForm/@ww
    Out[]=
    
    1
    1
    2
    ​
    ,
    1
    2
    2
    ​
    ,
    1
    1
    3
    ​
    ,
    1
    2
    3
    ​
    ,
    2
    2
    3
    ​
    ,
    1
    3
    2
    ​
    ,
    1
    3
    3
    ​
    ,
    2
    3
    3
    ​
    
    A standard Young tableau is a special case of Weyl tableaux.
    As we will see later, a Weyl tableau physically represents the occupation of quantum states corresponding to the letters in the entries of the tableau.

    Gelfand Patterns

    Standard Young tableaux and Weyl tableaux can be conveniently represented in a unified manner in terms of Gelfand patterns. Gelfand patterns also offer more programmable conveniences. Therefore, Q3 prefers Gelfand patterns to standard Young tableaux or Weyl tableaux when it deals with the Schur basis and transform.
    A
    Gelfand pattern
    (also known as Gelfand-Zetlin or Gelfand-Tsetlin pattern) of dimension d is an upper-left triangular arrangement of non-negative integers (or equivalent letters) of d rows.
    m
    d1
    m
    d2
    …
    m
    dd
    ⋮
    ⋮
    ⋰
    m
    21
    m
    22
    m
    11
    The entries satisfy the so-called "betweenness" condition:
    m
    ij
    ≥
    m
    i-1,j
    ≥
    m
    i,j+1
    .
    In a Gelfand pattern, each row
    [m]
    k
    =(
    m
    k1
    ,
    m
    k2
    ,…,
    m
    kk
    )
    represents a partition of integer
    n
    k
    satisfying
    n
    k
    ≤
    n
    k+1
    for all
    k=1,2,…,n
    . Therefore, a Gelfand pattern may be regarded as a sequence of partitions of non-increasing integers from top to bottom. This endows Gelfand pattern with a recursive structure. Accordingly, in many cases, it is useful to refer to a Gelfand pattern by the top row and the rest subpattern. For example, if the above entire Gelfand pattern is referred to by
    (m)
    d
    ,
    (m)
    d
    =
    m
    d1
    m
    d2
    …
    m
    dd
    ⋮
    ⋮
    ⋰
    m
    21
    m
    22
    m
    11
    ,
    then one can also write it as
    (m)
    d
    =
    [m]
    d
    (m)
    d-1
    ,
    where
    [m]
    d
    =(
    m
    d1
    ,
    m
    d2
    ,…,
    m
    dd
    )
    refers to the top row and
    (m)
    d-1
    refers to the remaining subpattern of order
    n-1
    , that is,
    (m)
    d-1
    =
    m
    d-1,1
    m
    d-1,2
    …
    m
    d-1,d-1
    ⋮
    ⋮
    ⋰
    m
    21
    m
    22
    m
    11
    .
    When there is no risk of confusion, explicit specifications of dimension in subpatterns may be omitted. For example, let λ be an integer partition and
    (
    m
    λ
    )
    d-1
    be a subpattern of dimension
    d-1
    consistent with shape λ to form a full Gelfand pattern. Then,
    
    λ
    (
    m
    λ
    )
    
    d
    =
    λ
    (
    m
    λ
    )
    d-1
    .

    Correspondence between Gelfand Patterns and Weyl Tableaux

    There is a one-to-one correspondence between Gelfand patterns of dimension
    d
    and Weyl tableaux with entries of
    d
    letters.
    To convert a Weyl tableau to a Gelfand pattern, generates new Weyl tableaux, at each step, by removing boxes with a consecutive number starting from the dimension
    d
    , and put their shapes into the rows of the Gelfand pattern. For example, consider the following Weyl tableau of dimension 3,
    1
    1
    2
    ​
    .
    First, remove all boxes with entry 3, the dimension of the Weyl tableau. In this case, there is no such box and the generated Weyl tableau is the same as the original one,
    1
    1
    2
    ​
    .
    Next, remove boxes with entry 2. The resulting Weyl tableau is given as follows,
    1
    1
    .
    Finally, removing boxes with entry 1 leads to the empty tableau. Overall, we have obtained a sequence of Weyl tableaux,
    1
    1
    2
    ​
    
    1
    1
    2
    ​
    
    1
    1
    .
    These Weyl tableaux in the sequence have shapes (2,1,0), (2,1), (2), respectively, and collecting them in rows from top to bottom gives the desired Gelfand pattern,
    
    2
    1
    0
    2
    1
    ​
    2
    ​
    ​
    .
    Here are more examples:
    In[]:=
    gg=GelfandPattern[#,3]&/@ww;​​Thread[ww->gg]//TableForm
    Out[]//TableForm=
    1
    1
    2
    ​
    
    2
    1
    0
    2
    1
    ​
    2
    ​
    ​
    1
    2
    2
    ​
    
    2
    1
    0
    2
    1
    ​
    1
    ​
    ​
    1
    1
    3
    ​
    
    2
    1
    0
    2
    0
    ​
    2
    ​
    ​
    1
    2
    3
    ​
    
    2
    1
    0
    2
    0
    ​
    1
    ​
    ​
    2
    2
    3
    ​
    
    2
    1
    0
    2
    0
    ​
    0
    ​
    ​
    1
    3
    2
    ​
    
    2
    1
    0
    1
    1
    ​
    1
    ​
    ​
    
    1
    3
    3
    ​
    
    2
    1
    0
    1
    0
    ​
    1
    ​
    ​
    2
    3
    3
    ​
    
    2
    1
    0
    1
    0
    ​
    0
    ​
    ​
    We start from the bottom row of the Gelfand pattern. It has a single entry 2, and put two boxes with 1 in the top row of the Weyl tableau to get
    Next, take the difference between the second and first row (from the bottom) to get (0,1). Accordingly, put zero box with 2 in the first row of W and one box with 2 in the second row of W. It leads to
    Finally, take the difference between the last (from the bottom) and second row of the Gelfand pattern to get (0,0,0). So, in each row we put zero box with 3, giving
    Here are the examples for which the inverse mapping was seen above:

    Irreducible Representations of Symmetric and Unitary Groups

    Irreducible representations of the symmetric and unitary groups have many parallels with Weyl tableaux for the unitary group playing the role of standard Young tableaux for the symmetric group. A difference is the allowed Young diagrams (shapes).

    Irreducible Representations of the Symmetric Group

    This basis is called the Young-Yamanouchi basis.
    when there is no risk of confusion.
    Finding all standard Young tableaux of other shapes, one can list all the basis elements.

    Irreducible Representations of the Unitary Group

    This basis is called the Gelfand-Zetlin (or Gelfand-Tsetlin) basis. Physically, a Weyl tableau represents the occupation of quantum states corresponding to the letters in the entries of the tableau (see below).
    when there is no risk of confusion.

    Schur-Weyl Duality and Schur Basis

    Actions of the Symmetric and Unitary Groups on the Composite System

    We are often interested in characterizing the symmetries in the system. In this case, the relevant symmetries are associated with the symmetric and/or unitary group.

    Schur-Weyl Duality

    Schur Basis

    One expects that the actions of the symmetric and unitary groups on these basis vectors are given by
    where the elements of which are labelled by pairs of standard Young tableau and Weyl tableau, or equivalently by
    where the elements are labelled with pairs of Gelfand-Young and Gelfand-Weyl patterns.
    Similarly, one can get the Young-Yamanouchi basis just by regrouping the elements.

    Quantum Schur Transform

    Of course, the quantum Schur transform is implied in the relation between the two bases,
    and evaluating the quantum Schur transform is reduced to calculating the expansion coefficients
    The Bacon-Chuang-Harrow algorithm constructs the Schur basis by iteratively adding nodes one by one and each time using the Clebsch-Gordan transform rather than directly calculating the above expansion coefficients.

    Clebsch-Gordan Transform

    is a valid Gelfand pattern. This operator is called a Wigner operator and, physically, attaches a node to the preexisting Gelfand-Zetlin state to get another Gelfand-Zetlin state. In terms of the Wigner operator, the Clebsch-Gordan transform reads as
    This has reduced the Clebsch-Gordan transform to calculating the matrix elements
    This would allow one to apply the Wigner-Eckart theorem to evaluate the matrix elements. In this particular case, the Wigner-Eckart theorem states that

    Selection Rules

    The Clebsch-Gordan coefficient

    Constructing Schur Basis with Clebsch-Gordan Transform

    By repeating the Clebsch-Gordan transform,
    multiple times, one can eventually get the basis vectors of the form

    Canonical Chain of Subgroups

    Here, demonstrated are the branching rules of the Schur basis for the canonical chains of subgroups of the symmetric and unitary groups.

    Canonical Chain of Subgroups of the Symmetric Group

    The branching rule for the symmetric group is given by
    Load the package unless you already did.
    Consider symmetric group S(n) acting on n three-level systems.
    Irreducible representations are labeled by the following Weyl tableaux.
    Examine the generators of subgroup S(n-1) of S(n).
    The restriction of the above irreducible representation of S(n) to subgroup S(n-1) is reducible and is decomposed into different irreducible representations of S(n-1) as illustrated below in a few select sectors.
    Here, for example, the matrices
    of two different generators may (falsely) suggest that the restriction is not decomposed. In fact, just change of ordering confirms that the restriction is decomposed:

    Canonical Chain of Subgroups of the Unitary Group

    The branching rule for the unitary group is give by
    This is demonstrated here.
    Load the package unless you already did.
    Consider unitary group U(3).
    Consider $n three-level atoms.
    Irreducible representations are labeled by the following standard Young tableaux.
    Now, consider the generators of subgroup U(2) of U(3).
    Take one of the irreducible representations.
    The restriction of the above irreducible representation of U(3) to subgroup U(2) is reducible and is decomposed into different irreducible representations of U(2).
    Here, note that the first component associated with
    and the one associated with
    are conventionally regarded equivalent, but within the formulation of branching rules (e.g., for a subgroup adapted basis), they are regarded as inequivalent since they originate in different partitions, namely, (2,1) and (1), before adding the boxes with entry 3.
    Further observe the decomposition of the generators of U(2).

    Notes

    Note 1

    Here, it is illustrated that partitions of different integers may lead to equivalent irreducible representations of the unitary group. Sometimes (for example, within the formulation of branching rules), two representations associated with distinct Young diagrams are regarded inequivalent.
    For example, partition (1) of 1 obviously gives the spin=1/2 representation of U(2).
    Now, consider partition (2,1) of 3. The two Weyl tableaux allowed for the partition are shown in the following line.
    The above Weyl tableaux are associated with two basis vectors of a two-dimensional representation of U(2).

    CITE THIS NOTEBOOK

    The quantum Schur transform: theory and implementations​
    by Mahn-Soo Choi​
    Wolfram Community, STAFF PICKS, August 25, 2025
    ​https://community.wolfram.com/groups/-/m/t/3535485