Show code cell source
from IPython.core.display import HTML as Center
Center(""" <style>
.output_png {
display: table-cell;
text-align: center;
vertical-align: middle;
}
</style> """)
1. Introduction#
1.1. Symmetries#
Symmetries provide one of the key ideas in modern mathematics and physics. They are naturally associated with the notion of groups. A typical problem in this context is to construct a system that behaves in a certain way under the action of a symmetry, for example, a system that is invariant under a given symmetry.
To tackle this kind of problems, we need to know how the symmetries act on the building blocks of systems and these blocks are often the elements of vector spaces, i.e. vectors. This leads to a natural question of how to classify such actions of groups on vector spaces. The mathematical theory that deals with this question is the representation theory.
Many systems in classical and quantum physics are invariant under some symmetry operations. We distinguish two types of symmetries: discrete and continuous symmetries.
In the first category we have for example
reflection (parity) symmetry
discrete rotations
time reversal
CPT symmetry of the Standard Model
Continuous symmetries include:
time translations
space translations
spatial rotations
Poincare transformations
gauge symmetries of quantum field theories
Each symmetry can be described mathematically using groups and their representations.
1.2. First look at groups and representations#
Consider the following square in 2D space:
Show code cell source
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Polygon
pts = np.array([[0,1], [1,0], [0,-1],[-1,0]])
p = Polygon(pts, closed=True)
ax = plt.gca()
ax.set_aspect('equal', 'box')
ax.grid()
ax.add_patch(p)
ax.set_xlim(-1.5,1.5)
ax.set_ylim(-1.5,1.5)
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.annotate("$x_2=(0,1)$", xy=(0, 1), xytext=(0.25, 1.25),
arrowprops=dict(arrowstyle="->"))
ax.annotate("$x_1=(1,0)$", xy=(1,0), xytext=(1.25, 0.25),
arrowprops=dict(arrowstyle="->"))
ax.annotate("$x_3=(-1,0)$", xy=(-1,0), xytext=(-1.5, -0.5),
arrowprops=dict(arrowstyle="->"))
ax.annotate("$x_4=(0,-1)$", xy=(0,-1), xytext=(0.25, -1.25),
arrowprops=dict(arrowstyle="->"))
plt.show()

It is symmetric under rotations and reflections. For example: the rotation by \(90^\circ\) clockwise does not change the shape of the square. However, it permutes its vertices in the following way:
We associate a permutation to this symmetry: \((1432)\).
Another example: reflection with respect to the \(x\)-axis. It permutes vertices:
and \(x_1\) and \(x_3\) are unchanged. We associate another permutation to this symmetry: \((1)(3)(24)=(24)\).
There are 8 such symmetries in total (four rotations and four reflections):
\(e_1=id\) - identity
\(e_2=(1432)\) - rotation by \(90^\circ\) clockwise
\(e_3=(13)(24)\) - rotation by \(180^\circ\) clockwise
\(e_4=(1234)\) - rotation by \(270^\circ\) clockwise
\(e_5=(24)\) - \(x\)-axis reflection
\(e_6=(13)\) - \(y\)-axis reflection
\(e_7=(14)(23)\) - reflection with respect to the top-left to bottom-right diagonal
\(e_8=(12)(34)\) - reflection with respect to the top-right to bottom-left diagonal
Two symmetries applied one after another is also a symmetry: \(e_2\) followed by \(e_2\) is \(e_3\). We indicate it as
where \(\star\) is a multiplication of group elements (binary operation). This can be done using vertex permutations:
where we used the symbol \(\circ\) to indicate multiplication (composition) of permutations.
One can construct a table collecting all results of multiplications of two symmetries - Cayley table:
This group is called the dihedral group \(D_4\).
Some important observations from this table:
each element appears only once in each column and in each row
the element \(e_1\) acts as the identity element, namely
every element has its inverse, i.e. for each \(e_i\) there exists \(e_j\) such that
These are common properties for all groups.
Groups are very abstract mathematical objects that are defined as a set with binary operation of its elements satisfying a series of conditions. We are interested in representing these elements in such a way that we can see how group elements act on the square. We can do it by associating \(2\times 2\) matrices to each group element:
These matrices satisfy the same multiplication table as the group elements. We call these set of matrices a representation of group \(D_4\). This is not the only representation and we will discuss many more of them in this module.