1. Notations for permutations
There are many ways to encode a permutation of several objects. This package uses four of them. For example suppose that the collection of six objects
♡ ⌚ □ ○ :-) △
is reordered to
□ ⌚ ○ ♡ △ :-)
1) We can say that the first object (a heart) has gone to the fourth place (it is conventional to say that the "image" of "point" 1 is point 4), and so on. If we number the initial objects from 1 to 6, one natural way of encoding this permutation would be
Perm[{3, 2, 4, 1, 6, 5}]
Note that the point 2 is not moved by the permutation. It is called a "singleton".
2) Another natural way of encoding the permutation would be just listing the images of the six points:
Images[{4, 2, 1, 3, 6, 5}]
3) It is well known that any permutation can be understood as a set of disjoint cycles where the image of each point is written on its right and the image of the last point of the cycle is the first one:
Cycles[{1, 4, 3}, {5, 6}]
By convention, singleton cycles like {2} are removed from the cyclic notation.
4) Finally, it is particularly efficient in Mathematica to represent permutations using rules:
Rules[1->4, 4->3, 3->1, 5->6, 6->5]
Again, note that the singleton has not been included.
Perm[list] Images[list]
Cycles[cycles] Rules[rules]
Notations for permutations.
Naturally, permutations form a group under the law of multiplication. For example all permutations of n points form the so-called symmetric group . However there is another important superstructure that will be very useful when working with tensor symmetries: an algebra. We shall define laws of addition of permutations and of multiplication by scalars. At the moment we only assume that permutations can be given a sign (-1 or +1). It that sense, following R. Portugal, we are working on {-1,1}×. An example of signed permutation is:
- Perm[{2, 3, 4, 1}]
We can translate from one notation to other notation:
In[14]:=
Out[14]=
In[15]:=
Out[15]=
In[16]:=
Out[16]=
In[17]:=
Out[17]=
The sign just remains untouched:
In[18]:=
Out[18]=
The notation of a permutation is given by
In[19]:=
Out[19]=
TranslatePerm Change permutation to a given notation
NotationOfPerm Returns the notation of a permutation
Translation and notation of permutations.
Created by Mathematica (May 16, 2008) |