Young Frame Tensor Product Generator

What it does

In the group theory lecture on problem set 13 (PDF) there is an algorithm given that lets you compute the tensor product “\( \otimes \)” of two Young tableaux. In exercise A 13.2 one is asked to compute some tensor products from irreducible representation of SU(3). In the first part, \( 3 \otimes 3 \) and \( 3 \otimes 3 \) is asked.

During the group theory exercise on 2015-01-26 we went through the steps and computed those products by hand and trial and error. Since is a rather algorithmic task I wanted to write a program for this that does all the labor.

How it works

In the background, there is a PHP script which does all the work on this server. As always, you can find the source code on GitHub. The file yf.php contains all the functions and actual logic. young.php contains some glue that brings this web interface and the back end together. index.php is the page you view right now, it just shows the results. The design was done with the Bootstrap framework.

You enter the Young frames A and B into the system. Then those are converted into arrays. A recursive function called add_block will take the current output frame (starting with A) and a position in B. Then it will try all positions where it can add the selected block from B onto A. Those positions are the end of all the lines as well as a new column at the bottom. The function add_block will then call itself again with the new A which has one more element and advances to the next block on B. You can see the messages that are generated during the process at the bottom of the page.

If all the blocks of B are used up and the diagram is a legal one, it gets copied into the list of results. This list is displayed in the first well. Then it will go over it again and only take the unique ones and write it as a more compact tensor sum in the second well.

How to use it

Write the Young frames that you want to multiply into the text boxes with any character you like (although I would only take simple letters because Unicode characters probably will be interpreted as multiple boxes). Then hit the green button and get the result below.

The first well shows all the generated legal diagrams with the letters in them. The second well will show the more compact tensor sum notation where multiple diagrams are taken together. And in the third well you find the dimension as calculated with the hook rule. To give you more information, the dimension is written out as the quotient of the product number and the hook number in a table as well.

In case there are multiple representations with the same dimension, they are still different. Look at their Young frames and decide which one should have a bar (overline).

So once you have done the homework problem, you can then verify your results or find an error in my program :-)

\( \otimes \)
0): ?>

Possible combinations

Unique combinations


Total dimension by \( A \otimes B \) is . The total dimension in the result is .

Total dimension by \( A \otimes B \) is . The total dimension in the result is . This does not work out!

Multiplicity Dimension Product Hook Number
0): ?>



I use Piwik on this page to track visitors. It honors the “Do not track” of your browser. You can opt-out here.