I Introduction
In the history of physics, the cooperation of physicists and mathematicians has yielded great harvest in the first half of the twentieth century, as the installation of group theory in quantum mechanics[1]. One of the main applications is realized in the field of solidstate physics[2, 3, 4]. In subsequent years, however, such productive relationship between physics and mathematics became enfeebled, as physicists and mathematicians were pursuing their own interests separately. In material science, the typical tool of study has turned into “first principle electronic structure computation”, in which rapid computers are intensively used so that the quantitative simulation could be achieved. In contrast, the group theoretical view in the quantum physics is rather a qualitative one, which could explain the likeness in similar material structures, but could not illuminate the origin of subtle but distinct differences. The standpoints of group theoretical analysis, and of first principles simulation, are located at crosspurposes. This is one of the reasons which brought about the breakingoff between the group theory and the first principles electronic structure computation. There is another hardship which hinders the collaboration of mathematics and physics. The computation of the “representation” in group theory[5, 6, 7, 8, 9], useful in physical applications, requires special arts, which are recondite to nonexperts. Thus, for the purpose of general use, the character tables are listed up in literature and textbooks (recently, moreover in databases). Traditionally we are obliged to consult with the nonelectric data, which is prone to troublesome errors. Such a circumstance has little affinity to the modern style of computational physics, where necessary data should easily be accessible in the computer or computed anew on one’s own responsibility. Nevertheless, it must be stressed here that such a cumbersome situation has already become surmountable. The development of the effective computer architectures and the program packages for computational group theory in recent decades have benefited mathematicians so well that they could actually obtain definite symbolic or numeric solutions to the problems of their own, not only in proving the existence of the solution[10, 11]. These computational tools are not restricted to mathematicians, but available to every scientific researcher. Powerful outcomes by mathematicians, also, will confer a modernized viewpoint to the material science, so that the conventional computational tools could be assisted and improved, although, in the present state, most of material scientists seem to be content in having oldfashioned knowledge of mathematics. This article takes several examples in the group theoretical analysis in the electronic structure calculation, and presents the details of the computation so that the readers would know how to use modern mathematical packages of computational group theory. The necessary group theoretical data are computed by the desktop computer, without references to other resources, and are applicable to the analysis of the quantum physics in materials which is principally governed by the symmetry of the system. The article furthermore expounds the possible style of the systematic material design, by which the electronic structure might be controlled artificially from the view point of the structural symmetry. From these topics, the potentiality of the cooperation of computer algebra and firstprinciples electronic structure (which are legitimate heirs of group theory and quantum mechanics) may be observed.
Ii Computation of group theoretical properties using “GAP”
The computational discrete algebra package GAP is one of powerful tools for the computation in the group theory[12]. It can be applied to the determination of the group theoretical properties which are necessary for solidstate electronic structure computation. For this purpose, the point group of the crystal must be determined. The group operations are to be listed up; the multiplication table is to be prepared; through which the character table is computed.
At first, the concept of the character of the group is explained here. Let us consider an equilateral triangle as in Fig. 1. There are operations in the plane, such as, the rotation by 60 degrees at the center of mass, and the reflection at an axis which connects the center of mass and one of the vertexes. These operations exchange vertexes among themselves, but fix the triangle unmoved. In the mathematical terminology, these operations consist a group . These operations are the permutation of the vertexes, numbered as 1,2,and 3 in clockwise direction.
They are expressed as
In the above the top and the bottom low denote the initial and the final arrangements of the vertexes respectively.
These operations can also be expressed by six rotation matrices in the xy plane:
The multiplication table among these elements is written in table 1.
E  A  B  C  D  F  

E  E  A  B  C  D  F 
A  A  E  D  F  B  C 
B  B  F  E  D  C  A 
C  C  D  F  E  A  B 
D  D  C  A  B  F  E 
F  F  B  C  A  E  D 
Let us examine these maps:
One can see that the multiplication table is kept unaltered by these maps with the replacement of the six symbols to corresponding targets. The geometrical operations in the triangle, forming a group, are represented by these maps, even if not always faithfully; the viewpoint can be switched from geometrical one to numerical one. This is an example of the representation of the group; all elements in the group are represented by proxies of scalars or matrices; the multiplications among them are subject to the same rule as the original group elements. The trace of the matrix representation, such as , is called “character”, having certain properties favorable to the application in quantum physics, as will be seen later. The character table of is given in table 2.
E  A  B  C  D  F  

1  1  1  1  1  1  
1  1  1  1  1  1  
2  0  0  0  1  1 
As can be seen in the multiplication table, the group elements are divided into subsets such as
(2) 
These subsets are called conjugacy classes. The elements in the same conjugacy class have a common value of the character; it is customary for character tables to be labeled by conjugacy classes, not by each group elements. The conjugacy classes for are given by three subsets: .
The gap computation for this example proceeds as follows. The group is defined by the minimal set of generators including a rotation and a reflection:
gap> G:=Group((1,2,3),(1,2)); Group([ (1,2,3), (1,2) ])
The program returns the results in the shorthand notation preferred by mathematicians.
gap> Elements(G); [ (), (2,3), (1,2), (1,2,3), (1,3,2), (1,3) ] gap> M:=MultiplicationTable(G); [ [ 1, 2, 3, 4, 5, 6 ], [ 2, 1, 4, 3, 6, 5 ], [ 3, 5, 1, 6, 2, 4 ], [ 4, 6, 2, 5, 1, 3 ], [ 5, 3, 6, 1, 4, 2 ], [ 6, 4, 5, 2, 3, 1 ] ]
The multiplication table is given by a matrix, which is represented by a doubly nested list; each of the inner lists should be read as one of the lows in the matrix. The entry shows the result of the multiplication between elements and .
Subgroups and generators are computed by:
gap> AllSubgroups(G); [ Group(()), Group([ (2,3) ]), Group([ (1,2) ]), Group([ (1,3) ]), Group([ (1,2,3) ]), Group([ (1,2,3), (2,3) ]) ] gap> GeneratorsOfGroup(G); [ (1,2,3), (1,2) ] gap> G.1; (1,2,3) gap> G.2; (1,2) gap> S:=Subgroup(G,[(1,2)]); Subgroup(G,[(1,2)]); gap> Elements(S); [ (), (1,2) ] gap> A:=Group((1,2,3)); Group([ (1,2,3) ]) gap> IsSubgroup(G,A); true gap> IsSubgroup(A,G); false gap> A:=Group((1,2,3,4)); Group([ (1,2,3,4) ]) gap> IsSubgroup(G,A); false
The group can also be defined from the multiplication table as
gap> G2:=GroupByMultiplicationTable(M); <group of size 6 with 6 generators> gap> Elements(G2); [ m1, m2, m3, m4, m5, m6 ]
The elements in the group constructed from the multiplication tables are represented by abstract symbols m1,m2,…,m6.
In order to construct the group from the rotation in the Euclidean space, the generating set of the rotation matrices should be given.
gap> M1:=[[1/2,ER(3)/2],[ER(3)/2,1/2]]; [ [ 1/2, 1/2*E(12)^7+1/2*E(12)^11 ], [ 1/2*E(12)^71/2*E(12)^11, 1/2 ] ] gap> M2:=[[1,0],[0,1]]; [ [ 1, 0 ], [ 0, 1 ] ] gap> G3:=Group(M1,M2); Group( [ [ [ 1/2, 1/2*E(12)^7+1/2*E(12)^11 ], [ 1/2*E(12)^71/2*E(12)^11, 1/2 ] ], [ [ 1, 0 ], [ 0, 1 ] ] ])
Here ER(n) is and E(n) is the primitive nth root of unity .
Let us inquire of the GAP package whether the three different definitions should generate equivalent groups.
gap> G=G; true gap> G2=G; false gap> G3=G; false
The GAP program decides that the three groups are not identical in the strict sense, because they are composed from different resources, i.e. permutations, abstract symbols, and matrices. However, we can construct isomorphisms among them. The following GAP command returns the isomorphism on the generators of the groups.
gap> IsomorphismGroups(G,G); [ (1,2,3), (1,2) ] > [ (1,2,3), (1,2) ] gap> IsomorphismGroups(G2,G); [ m1, m2, m3, m4, m5, m6 ] > [ (), (2,3), (1,2), (1,2,3), (1,3,2), (1,3) ] gap> IsomorphismGroups(G,G2); [ (1,2,3), (1,2) ] > [ m4, m3 ] gap> G4:=Group((1,2,3,4)) gap> IsomorphismGroups(G,G4); fail
The existence of the isomorphism between G and G3 can also be verified in this way.
The conjugacy classes are computed by this command:
gap> ConjugacyClasses(G); [ ()^G, (2,3)^G, (1,2,3)^G ]
To access entries in the conjugacy classes, a special method is needed. The following cannot work well:
gap> Elements(ConjugacyClasses(G)); [ ()^G, (2,3)^G, (1,2,3)^G ]
Instead, using “List” command and anonymous functions in calculus, we can access each entry in the list:
gap> List(Elements(G),x>x); [ (), (2,3), (1,2), (1,2,3), (1,3,2), (1,3) ] gap> List(Elements(G),x>x^1); [ (), (2,3), (1,2), (1,3,2), (1,2,3), (1,3) ] gap> List(ConjugacyClasses(G),Elements); [ [ () ], [ (2,3), (1,2), (1,3) ], [ (1,2,3), (1,3,2) ] ] gap> List(ConjugacyClasses(G),Representative); [ (), (2,3), (1,2,3) ]
The character table is computed by this command:
gap> irrg:=Irr(G); [ Character( CharacterTable( Sym( [ 1 .. 3 ] ) ), [ 1, 1, 1 ] ), Character( CharacterTable( Sym( [ 1 .. 3 ] ) ), [ 1, 1, 1 ] ), Character( CharacterTable( Sym( [ 1 .. 3 ] ) ), [ 2, 0, 1 ] ) ]
The character table can be accessible as a numeral list, or as a map on the group elements:
gap> List([1,2,3],y>List([1,2,3],x>irrg[y][x])); [ [ 1, 1, 1 ], [ 1, 1, 1 ], [ 2, 0, 1 ] ] gap> List([1,2,3],y>List(Elements(G),x>x^irrg[y])); [ [ 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1 ], [ 2, 0, 0, 1, 1, 0 ] ]
The irreducible representation is computed by
gap> rep:=IrreducibleRepresentations(G); [ Pcgs([ (2,3), (1,2,3) ]) > [ [ [ 1 ] ], [ [ 1 ] ] ], Pcgs([ (2,3), (1,2,3) ]) > [ [ [ 1 ] ], [ [ 1 ] ] ], Pcgs([ (2,3), (1,2,3) ]) > [ [ [ 0, 1 ], [ 1, 0 ] ], [ [ E(3), 0 ], [ 0, E(3)^2 ] ] ] ] gap> List(Elements(G),x>x^rep[3]); [ [ [ 1, 0 ], [ 0, 1 ] ], [ [ 0, 1 ], [ 1, 0 ] ], [ [ 0, E(3)^2 ], [ E(3), 0 ] ], [ [ E(3), 0 ], [ 0, E(3)^2 ] ], [ [ E(3)^2, 0 ], [ 0, E(3) ] ], [ [ 0, E(3) ], [ E(3)^2, 0 ] ] ]
This command returns the irreducible representations, giving the relations between the generators of the group and the matrix representation. The characters are computed by taking traces of the matrix representation.
The character table is also computed by
gap> tbl:=CharacterTable(G); CharacterTable( Sym( [ 1 .. 3 ] ) ) gap> Display(tbl); CT1 2 1 1 . 3 1 . 1 1a 2a 3a 2P 1a 1a 3a 3P 1a 2a 1a X.1 1 1 1 X.2 1 1 1 X.3 2 . 1
To make use of the character table computed in this way, various subsidiary commands are prepared in GAP system. (N.B. The orderings of representations or characters by these commands do not always coincide with each other.)
gap> ConjugacyClasses(tbl); [ ()^G, (2,3)^G, (1,2,3)^G ] gap> Irr(tbl); [ Character( CharacterTable( Sym( [ 1 .. 3 ] ) ), [ 1, 1, 1 ] ), Character( CharacterTable( Sym( [ 1 .. 3 ] ) ), [ 2, 0, 1 ] ), Character( CharacterTable( Sym( [ 1 .. 3 ] ) ), [ 1, 1, 1 ] ) ]
Iii Some preliminaries
iii.1 Projection operator
Once the characters of the group are obtained, “projection operators” are constructed and assigned to each of the irreducible representation. The definition is as follows:
(3) 
where is the dimension of the irreducible representation, is the order of the group, and is the character of the group element , which is allowed to be complexvalued. is the operator allotted to each in the space in which the group action is defined. This operator acts on functions in the Euclidean space as follows:
(4) 
By this construction, we can distinguish whether a function belongs to the corresponding irreducible representation or not. If the projector is applied to the basis functions of the corresponding irreducible representations, these functions are invariant as a set: on the other hand, the projector is applied to the basis functions of different irreducible representations, the result of the projection goes to zero. (The epithet “invariant” should be understood in the following way: in many cases, plural basis functions belong to one irreducible representation. Through the group operations, these basis functions are interchanged with each other or reexpressed as the linear combination of them; moreover, they are never transformed into functions belonging to other representations. In a word, they are invariant as a subspace; if the subspace corresponding to a representation is minimal, no more being divisible, it is called irreducible. Whole of representations and characters of the arbitrary finite group could be computed exactly, without omission, by the principle of the group theory.)
If we know the explicit forms of the irreducible matrix representation , the projection operator of the following form is useful:
(5) 
Owing to the definition of the partner functions
(6) 
and the orthogonality theorem of the representation
(7) 
this projector transforms one basis vector into another basis in one irreducible representation:
(8) 
Moreover it can project out kth partner function of the irreducible representation from an arbitrary function as
(9) 
At this junction, the connection between the group theory and the energy spectrum of the Schrodinger equations arises. Let the potential term be invariant under some symmetry operations. With this potential term, certain eigenfunctions should exist. When the symmetry operations are applied to the Schrodinger equation, the Laplacian, the potential and the energy spectrum are invariant: the changeable is only the wavefunction, which are expressed by the basis functions in the irreducible representation. If the irreducible representation is onedimensional, the wavefunction will be invariant up to a certain phase factor by the symmetry operation: on the otherhand, if the representation is multidimensional, the symmetry operation may generate different wavefunctions which are other solutions to the same equation with the same eigenvalue. Such circumstances lead to the degeneracy of the energy spectrum. The identification of each wavefuntion to its proper irreducible representation enables us to clarify the relation between the energy spectrum and the symmetry in the system, which is helpful in the analysis of the electronic properties of materials.
iii.2 Space group
An ndimensional space group S is a discrete subgroup in a group of Euclidean motions in , such that the subgroup T in S, composed of pure translations(without rotations or reflections) is a free Abelian subgroup of rank n, having finite index in S. Thus an exact sequence of groups exists as
(10) 
in which acts on by means of the conjugation action , which represents the action of the point group , defined as a factor group , on the lattice translations.
In a more intuitive expression, the space group is the set of symmetry operations in a periodic system; it is composed of rotations and reflections which fix components in the unit cell, combined with parallel movements along crystal axes; therefore is of infinite order; the parallel movements, by themselves, compose the discrete subgroup
of infinite order, in which the direction and the stride of the movements are determined by the primitive lattice vectors. Meanwhile the point group
is the set of reminder of operations in , taken modulo of the crystalline periodicity, i.e. with the parallel movements in being nullified; it is a finite group and may include fractional translations, which are represented by linear combinations of fractions of primitive lattice vectors.iii.3 Crystallographic group
In the case of crystallographic group, the symmetry operation is the affine mapping, composed of the linear parts , including the reflection, rotation, and inversion, and the translation parts [13]. The definition is
(11) 
(12) 
(13) 
The operation on the plane wave is
(14) 
The affine mapping gives rise to the phase factor , which is not unity at a general kpoint. On the other hand, the matrix representation of the affine mapping is subject to the following relation:
(15) 
The trace of the matrix is the character: therefore the phasefactors in the character and the wavenumber part in the Blochtype wavefunction ( in ) are canceled with each other as complex conjugates; in the general kpoint, the phase shift in the character can actually be negligible in the projection operator.(Indeed there are textbooks or lectures omitting these terms.) However, if the Blochtype wavefunction is expressed by planewave expansion , one should be cautious. The phase shift in the periodic part is , which remains without cancellation in the projection operation.
iii.4 Theoretical setup for Wyckoff positions
The mathematical definition of the Wyckoff positions is stated as follows.
Let be a space group, be its translation lattice, be its point group, be fractional translations. Each element in has a form of for and , and acts on a vector in as
(16) 
The stabilizer of under this action is denoted as Stab=. Let . An equivalence relations is set up if Stab is conjugate to Stab,i.e. Stab=Stab= Stab for some . This equivalence classes of is called the Wyckoff positions of .
This definition, given in the mathematicians’ terminology, is a little recondite for physicists. For a more intuitive understanding, it can be restated as:
The Wyckoff positions are a set of coordinate points, composed from two subsets:
The coordinate points which may be fixed by a certain symmetry operation of the point group. They are regarded as generators of the Wyckoff positions.
The coordinate points generated from those in Type 1 subset by all of the symmetry operations.
The command in GAP “WyckoffPositions(S)” returns the type 1 set for a space group S; the equivalent coordinate points to a generator “W” in type 1 set by the symmetry operations are computed from an another command “WyckoffOrbit(W)”.
iii.5 Units in the computation
Throughout the computations of quantum physics in this article, we use atomic units, abbreviated as a.u. if necessary; for the length, the Bohr radius(am); for the energy, the Hartree unit(EeV).
Iv Application 1: Identification of wavefunctions to irreducible representations
The application in this section is the classical example in group theory in quantum physics.
iv.1 The simplest case: at point
In this section, the group theoretical analysis of the wavefunction is exemplified. The wavefunctions at
point in the diamond crystal are classified to corresponding irreducible representations. The treatment for the general kpoint (
) shall be discussed later.(The knowledge on the distinction between symmorphic or nonsymmorphic crystal is necessary; the existence of these two types of crystal makes the discussion not a little complicated.)At first, the character table should be computed. The symmetric operations in the diamond structure, whose unit cell is minimal one, including two carbon atoms, are given in the appendix, as well as the multiplication table of these operations.
When one uses the GAP packages, there are several options for the preparation of the point group; of which three types are usable.
First: the symmetry operations are given as a set of three dimensional matrix.
gap> MT[ 1]:=[[ 1, 0, 0],[ 0, 1, 0],[ 0, 0, 1]];; gap> MT[ 2]:=[[ 1, 0, 0],[ 0, 1, 0],[ 0, 0, 1]];; .......................... gap> MT[ 48]:=[[ 0, 0, 1],[ 0, 1, 0],[ 1, 0, 0]];; gap> G:=Group(MT);
Second: the multiplication table in the group is supplied.
gap> M:=[[1,2,3,...,48],[...],...,[...]];; gap> G:=GroupByMultiplicationTable(M); gap> Elements(G); [ m1, m2, m3, m4,............,m45, m46, m47, m48 ]
In this case, the group elements are denoted by symbolical way, m1,m2,…,m48.
Actually, all of group elements are not necessarily provided to define a group: it is enough to give the smallest generating set, from which other elements are constructed. The group should be remade by means of the smallest generating set. (In the present implementation of GAP, especially when the multiplication table is supplied, the following tendency in the computation is observed: the computations for groups, constructed from the minimal generating set, are much quicker than those for groups where the all elements are stored as generators.) For the case of the diamond, the computation goes as:
GS:=SmallGeneratingSet(G); [ m36, m48 ] G:=Group(GS); <group with 2 generators>
The command “SmallGeneratingSet()” yields a reasonably small generating set. In the cases of finite solvable groups (a typical example of this is the crystal point group) and of finitely generated nilpotent groups, “MinimalGeneratingSet()” command is also available to get minimal generators, but the computation is timeconsuming. In addition, each element “elm” in the group “G“ can be expressed by generators, by means of Factorization(G,elm):
gap> List(Elements(G),x>Factorization(G,x)); [ <identity ...>, x2^1*x1*x2*x1, x2^2, (x2*x1)^2, x2^2*x1^2, x1*x2^2*x1, x1^2, x2^1*x1^1*x2^1*x1, x1^1*x2^1*x1*x2, x2^1*x1^2*x2, x2^1*x1*x2*x1^1, x1^2, x2^1*x1, x1^1*x2^1, x2*x1, x2*x1*x2^2, x2^2*x1*x2, x2*x1^1, x1*x2, x2^1*x1^1, x1^1*x2^1*x1^2, x2^1*x1^3, x2*x1*x2^2*x1^2, x2*x1^3, x1^3, x2^1*x1^1*x2^1*x1^2, x2^2*x1^3, x1*x2^2*x1^2, x2^2*x1^1, x2*x1*x2, x1^1, x2^1*x1*x2, x1*x2^2, x2^2*x1, x2^1*x1^1*x2^1, x1, x1^2*x2, x1*x2*x1^1, x2*x1^2, x1*x2^2*x1*x2, x2*x1*x2^2*x1, x2*x1^2, x1^1*x2^1*x1, x2^1*x1^2, x1*x2*x1, x2^1, x2*(x2*x1)^2, x2 ]
Third: the crystallographic groups are defined by four dimensional augmented matrices, in which both of the point group operations and the translations are inscribed. The notations for the augmented can be given in the following form
(17) 
acting on column vectors from the right or, alternatively,
(18) 
acting on low vectors from the left, which represent the affine mapping .(Crystallographers prefer the later notation.)
Once the crystallographic group is defined, the point group can easily be deduced. The definition of the crystallographic group may require more business; but it will be of use in the later applications, to which a certain idea of the crystallographic group are essential.
As for the diamond case, in the GAP computation, the crystallographic group is defined as follows. (The minimal generating set is used for simplicity.)
gap> M1:=[[0,0,1,0],[1,0,0,0],[0,1,0,0],[1/4,1/4,1/4,1]];; gap> M2:=[[0,0,1,0],[0,1,0,0],[1,0,0,0],[0,0,0,1]];; gap> S:=AffineCrystGroup([M1,M2]); <matrix group with 2 generators> gap> P:=PointGroup(S); Group([ [ [ 0, 0, 1 ], [ 1, 0, 0 ], [ 0, 1, 0 ] ], [ [ 0, 0, 1 ], [ 0, 1, 0 ], [ 1, 0, 0 ] ] ])
By these preparations the conjugacy classes and the character table of the diamond crystal are computed as tables 3 and 4.(The group elements for the symmetry operation are given in a table in the appendix. The entries in the conjugacy classes are given by the numbering of the table of the group elements.)
Class  Group Elements 

C.1  1 (The identity) 
C.2  2 , 3 , 4 
C.3  5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 
C.4  13 , 16 , 17 , 18 , 21 , 23 
C.5  14 , 15 , 19 , 20 , 22 , 24 
C.6  25 
C.7  26 , 27 , 28 
C.8  29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 
C.9  37 , 40 , 41 , 42 , 45 , 47 
C.10  38 , 39 , 43 , 44 , 46 , 48 
C.1  C.2  C.3  C.4  C.5  C.6  C.7  C.8  C.9  C.10  

x.1  1  1  1  1  1  1  1  1  1  1 
x.2  1  1  1  1  1  1  1  1  1  1 
x.3  1  1  1  1  1  1  1  1  1  1 
x.4  1  1  1  1  1  1  1  1  1  1 
x.5  2  2  1  0  0  2  2  1  0  0 
x.6  2  2  1  0  0  2  2  1  0  0 
x.7  3  1  0  1  1  3  1  0  1  1 
x.8  3  1  0  1  1  3  1  0  1  1 
x.9  3  1  0  1  1  3  1  0  1  1 
x.10  3  1  0  1  1  3  1  0  1  1 
We can apportion the wavefunctions at point to each irreducible representations by applying the projection operator. (It is enough to check whether the numerical result of the projection remains almost as it is, or it nearly vanishes to zero.) The identification in the example of the diamond is given in table 5. In the numerical expansion coefficients of the wavefunctions, we can imagine the existence of a hidden mechanism, as is suggested by the successions of zeros, or the interchanges of specific values with the alteration of signs. The hierarchy and the symmetry in them can be unraveled and classified by the group theoretical analysis.
1  2  3  4  5  6  7  8  

1  0  0  0  0  0.9765  0  0  0  0  0  0  0 
2  1  1  1  1.6243  0.0742  0.3519  0.0007  0.2934  0.3562  0.1637  0.3913  0.3212 
3  1  1  1  1.6243  0.0742  0.3519  0.0007  0.2934  0.3562  0.1637  0.3913  0.3212 
4  0  1  0  1.6243  0.0742  0.1488  0.1173  0.4172  0.0785  0.5376  0.1078  0.3212 
5  0  1  0  1.6243  0.0742  0.1488  0.1173  0.4172  0.0785  0.5376  0.1078  0.3212 
6  0  0  1  1.6243  0.0742  0.3159  0.301  0.1397  0.084  0.295  0.4612  0.3212 
7  0  0  1  1.6243  0.0742  0.3159  0.301  0.1397  0.084  0.295  0.4612  0.3212 
8  1  0  0  1.6243  0.0742  0.1848  0.419  0.0159  0.5186  0.0788  0.1777  0.3212 
9  1  0  0  1.6243  0.0742  0.1848  0.419  0.0159  0.5186  0.0788  0.1777  0.3212 
10  1  1  0  1.8756  0  0.0285  0.2391  0.3432  0  0  0  0.1671 
11  1  1  0  1.8756  0  0.0285  0.2391  0.3432  0  0  0  0.1671 
12  0  1  1  1.8756  0  0.1325  0.3315  0.2199  0  0  0  0.1671 
13  0  1  1  1.8756  0  0.1325  0.3315  0.2199  0  0  0  0.1671 
14  1  0  1  1.8756  0  0.3968  0.0935  0.0981  0  0  0  0.1671 
15  1  0  1  1.8756  0  0.3968  0.0935  0.0981  0  0  0  0.1671 
Ene.  2.1091  19.5799  19.5799  19.5799  25.1394  25.1394  25.1394  33.1443  
Rep.  x.1  x.10  x.10  x.10  x.7  x.7  x.7  x.2 
iv.2 Character table computation in supercell
It is a standard way to use the minimal unit cell. In the diamond structure, the minimal primitive cell is chosen to be the same as the facecentered one, in which two carbon atoms are located with the pointgroup G(I O,C S). Meanwhile, one can choose the cubic unit cell; the volume of which is four times as large as the minimal cell, because the cubic cell is constructed from four of the simplest unit cell stuck together obliquely. The unit cell enlarged in the similar way, (if possible, in which extra atoms are embedded) is called supercell. The point groups of the supercells are inevitably altered by the presence of extra fractional translations. The group theoretical computations for such supercells will be difficult for bare human powers, since the point group becomes larger and more complicated. Nevertheless, if one can use the computer algebra system, the character tables are easily computed. We should note that it is more advisable to compute characters of groups by ourselves if we can. Although the possible supercells are infinite, the character tables available in textbooks and databases are limited, possibly only for the minimal unit cell.
For the supercell, actually, the point group of the minimal crystal can be extended by the semidirect product with a finite Abelian group, by which extra fractional translations in the enlarged cell are represented. (The construction of the semidirect product will be stated elsewhere in the following section of this article.) The easiest and straight way for this is to remake the multiplication table. This can be done in the following way: first, apply possible fractional translations to group elements in symmetry operations of the minimal cell, so that all symmetry operations in the supercell are prepared in the following form:
(19) 
By means of these new set of operations, we must construct the multiplication table in the supercell:
(20) 
In the evaluation, we can make use of the multiplication table in the minimal cell:
(21) 
There is a relation:
(22) 
From the equations (21) and (22), it leads that
(23) 
Using this , the extended multiplication table can be constructed with ease.
The exemplar calculation for the diamond structure shall be executed in this section. The basic unit cell in the diamond structure is the facecentered one, including two atoms, The lattice vectors are defined as
(24) 
This basic unit cell could be extended fourfold, in which atomic coordinates are given by translations such as . The vectors are defined as:
(25) 
The extended unit cell is the cubic one, including eight atoms, to which the lattice vectors are defined as:
(26) 
Let F be the group composed of the four fractional translation vectors . And let T be the group of primitive lattice translations, composed of and the zero vector. The factor group N(:=F/T) is a finite group, whose generators are given by the projection of onto N. This factor group is the Klein four group, or . The generators satisfy the following relations.
(27)  
The pointgroup in the cubic unit cell is the semidirect product , between the group of the fractional translations N and the pointgroup in the basic unit cell. The new group includes 192 elements. The textbooks or databases, however, only show the point group of the basic, minimal unit cells, but not those of the extended supercells. In the latter cases, the point group is of the semidirect product; one can compute its character tables by straightforwardly constructing the multiplication table, or, in a more complicated and elegant way, i.e. by making use of the induced representation of the group, when the group N is Abelian. The computation of the induced representation will be explained in the appendix.
The group elements in the extended group are renumbered as follows:
(28) 
Class  Group Elements 
.1  [0,1] 
.2  [0,2],[0,3],[0,4],[1,2],[2,3],[3,4] 
.3  [0,5],[0,6],[0,7],[0,8],[0,9],[0,10],[0,11],[0,12], 
[1,5],[1,6],[1,7],[1,8],[1,9],[1,10],[1,11],[1,12],  
[2,5],[2,6],[2,7],[2,8],[2,9],[2,10],[2,11],[2,12],  
[3,5],[3,6],[3,7],[3,8],[3,9],[3,10],[3,11],[3,12]  
.4  [0,13],[0,17],[0,21],[1,16],[1,17],[1,23], 
[2,16],[2,18],[2,21],[3,13],[3,18],[3,23]  
.5  [0,14],[0,15],[0,19],[0,20],[0,22],[0,24], 
[1,14],[1,15],[1,19],[1,20],[1,22],[1,24],  
[2,14],[2,15],[2,19],[2,20],[2,22],[2,24],  
[3,14],[3,15],[3,19],[3,20],[3,22],[3,24]  
.6  [0,16],[0,18],[0,23],[1,13],[1,18],[1,21], 
[2,13],[2,17],[2,23],[3,16],[3,17],[3,21]  
.7  [0,25],[1,25],[2,25],[3,25] 
.8  [0,26],[0,27],[0,28],[1,26],[1,27],[1,28], 
[2,26],[2,27],[2,28],[3,26],[3,27],[3,28]  
.9  [0,29],[0,30],[0,31],[0,32],[0,33],[0,34],[0,35],[0,36], 
[1,29],[1,30],[1,31],[1,32],[1,33],[1,34],[1,35],[1,36],  
[2,29],[2,30],[2,31],[2,32],[2,33],[2,34],[2,35],[2,36],  
[3,29],[3,30],[3,31],[3,32],[3,33],[3,34],[3,35],[3,36]  
.10  [0,37],[0,40],[0,41],[0,42],[0,45],[0,47], 
[1,41],[1,42],[2,45],[2,47],[3,37],[3,40]  
.11  [0,38],[0,39],[0,43],[0,44],[0,46],[0,48], 
[1,38],[1,39],[1,43],[1,44],[1,46],[1,48],  
[2,38],[2,39],[2,43],[2,44],[2,46],[2,48],  
[3,38],[3,39],[3,43],[3,44],[3,46],[3,48]  
.12  [1,1],[2,1],[3,1] 
.13  [1,3],[1,4],[2,2],[2,4],[3,2],[3,3] 
.14  [1,37],[1,40],[1,45],[1,47],[2,37],[2,40],[2,41],[2,42], 
[3,41],[3,42],[3,45],[3,47] 
.1  .2  .3  .4  .5  .6  .7  .8  .9  .10  .11  .12  .13  .14  

y.1  1  1  1  1  1  1  1  1  1  1  1  1  1  1 
y.2  1  1  1  1  1  1  1  1  1  1  1  1  1  1 
y.3  1  1  1  1  1  1  1  1  1  1  1  1  1  1 
y.4  1  1  1  1  1  1  1  1  1  1  1  1  1  1 
y.5  2  2  1  0  0  0  2  2  1  0  0  2  2  0 
y.6  2  2  1  0  0  0  2  2  1  0  0  2  2  0 
y.7  3  1  0  1  1  1  3  1  0  1  1  3  1  1 
y.8  3  1  0  1  1  1  3  1  0  1  1  3  1  1 
y.9  3  1  0  1  1  1  3  1  0  1  1  3  1  1 
y.10  3  1  0  1  1  1  3  1  0  1  1  3  1  1 
y.11  6  2  0  2  0  2  0  0  0  0  0  2  2  0 
y.12  6  2  0  2  0  2  0  0  0  0  0  2  2  0 
y.13  6  2  0  0  0  0  0  0  0  2  0  2  2  2 
y.14  6  2  0  0  0  0  0  0  0  2  0  2  2  2 
The eight lowest eigenvalues in energy spectra in the minimal and cubic diamond cell are shown in table 8. There are two sets of threefold degeneracy in the former case. On the other hand,in the latter, there is one sixfold degeneracy, which is attributable to the overlap of the spectra at the three points in the Brillouin zone of the minimal unit cell. However, the character tables of point in the minimal diamond cell could not assign them in suitable representation; the character tables rebuilt for the cubic cell can do this.
Minimal  2.11  19.58  19.58  19.58  25.14  25.14  25.14  33.14 

Representation  x.1  x.10  x.10  x.10  x.7  x.7  x.7  x.2 
Cubic  2.11  6.74  6.74  6.74  6.74  6.74  6.74  13.03 
Representation  y.1  y.14  y.14  y.14  y.14  y.14  y.14  y.12 
V Application 2: A systematic way of the material designing
v.1 How to manage quantumdynamics in crystal?
The group theoretical view will be able to bring about a systematic way of material design. In this section, although in the level of tabletop exercise, a practicable form of material design is presented. In a nutshell, through the systematic reduction of the crystal symmetry, the bandstructure could tactically be modulated; the degeneracy of the energy spectrum can be artificially split into different levels and the new energygap can be opened. Toward the systematic reduction of the crystal symmetry, the crystallographic concept, called Wyckoff positions, is utilized[15, 13]. This mathematical idea is not an abstract one, but actually computable by means of the computer algebra.
One should note this: the degeneracy of the energy spectrum is governed by the symmetry of the crystal. From the mathematical viewpoint, the point group of the crystal system is the manifestation of the symmetry; the subgroups of the point group describe the possible style with the reduced symmetry.(It is well known that a material has general tendency to reduce its own symmetry in order to release itself from the energetically unstable situation owing to the existence of the degeneracy of occupied energy levels.) By tracing the tree structure of the inclusion relations of the subgroup of the finite groups, one can enumerate every possibility of reduced symmetry. For each of reduced symmetries one can compute group representations. The comparison of the character tables in the subgroups and the parent groups (by means of analyzing compatibility relations) one can rummage the possibility of the breakingdown of the energy spectrum degeneracy. The opening of the energygaps in the reduced symmetry will be speculated, sorted and classified with their group theoretical origins. This plan, therefore, will lead into a kind of systematic way of material design. It must be admitted that such a tactic still lacks in sufficiently quantitative argument, since the only possible existence of energygap, together with their relationship with crystal symmetry reduction, is discussed. In order to evaluate the stability of the reduced structure, or the actual possibly of its existence, one must employ massive firstprinciples computation. However, the group theoretical inspection has its own merit; it can be achieved by a light and quick computation, frugal in hardware usage; maybe simple computations in the level of elementary perturbation theory will do. Hence it can be applied to screening purposes for picking up candidates before serious massive firstprinciples computation.
As an example, consider the crystallographic group of cube, including following operations.

Three rotations along x, y, or z axes by 90 degrees.

Exchange of x, y, and z axes ( Rotations along the diagonal in the cube by 120 degrees).

The inversion and reflections are omitted for simplicity.
These rotations generate 24 operations in the cubic lattice to construct the point group. Using GAP, The relationship of the inclusion in subgroups (the lattice subgroup) can be inquired and visualized(Fig.2). The point group of the cubic lattice is located at the topmost node of the tree. We can trace the subgroups of lower symmetries in descending along the branches and finally arrive at the trivial group (the identity group), which is located at the root of the tree. This means that we can explore and predict the alternation of the band structure (viz, the splitting of the degenerated energy levels, or the opening of new band gaps) systematically, by consulting with the “paradigm” of the crystal symmetry.
Now there arise following questions.
Question 1.
How to make up actual crystal structures in correspondence with the subgroups of lower symmetries?
Answer 1.
The reduction of the symmetry may be occasioned, for example, by the presence of alien atoms, or the occurrence of point defects in the perfect crystal. The change in the electronic structure will be investigated by simple perturbation theory with sufficient accuracy.
Question 2.
In what positions alien atoms or point defects can be located? It is easy to cause the great change the symmetry, or, to abolish it completely. However, for the case with the small change in the symmetry, for example, that between neighboring connected entries in the subgroup lattice, can we set up favorable atomic dispositions?
Answer 2.
Choose an arbitrary point. Apply all of the operations of the subgroup in consideration to this coordinate. The number of the generated points is equal to the order of the subgroup. The set of these points is invariant with respect to the operation of the subgroup. By disposing alien atoms or defects in this set of points, we can reduce the symmetry of the crystal, and, continuing this way, descend through the subgroup lattice.
Question 3.
It is impossible for us to dispose alien atoms at arbitrary points in the crystal. With the view of the material design, a certain restriction should be imposed on the number of alien atoms. We would like to know the set of atomic sites, with a limitation in number, and invariant by the subgroup operation.
Answer 3.
Make use of the concept of the Wyckoff position.
The mathematical definition is given in the appendix. In a familiar word of material sciences, the Wyckoff positions are the set of equivalent points in the unit cell, which are transformed among themselves by symmetry operations. In general, the total number of such points is the same as that of the symmetry operations (the order of the point group). However, if the generating point of the Wyckoff position remains fixed by certain operations of the point group, the total number of Wyckoff positions will be fewer, which will be a factor of the order of the point group. In mathematical word, it is equal to the order of some factor group. In GAP program, the Wyckoff position is easily computed from a “Cryst” package.
In this example of the cubic lattice, the Wyckoff positions are classified as follows:

A discrete point (0,0,0).

A discrete point (1/2,1/2,1/2).

The centers of the edges of the cube:(1/2,0,0),(0,1/2,0),(0,0,1/2).

The centers of the faces:(1/2,1/2,0) (1/2,0,1/2),(0,1/2,1/2)

A segment (x,0,0) (0x1),invariant by 90degrees rotation along the x axis.

A segment (0,y,0) (0y1),invariant by 90degrees rotation along the y axis.

A segment (0,0,z) (0z1),invariant by 90degrees rotation along the z axis.

A segment (x,1/2,1/2) (0x1),invariant by 90degrees rotation along the x axis.

A segment (1/2,y,1/2) (0y1), invariant by 90degrees rotation along the y axis.

A segment (1/2,1/2,z) (0z1), invariant 90degrees rotation along the z axis.

A segment (t,t,t),invariant 120degrees rotations which exchange three axes.(In the similar way, all of diagonal lines of the cube belong to this type.)

Several segments (not discreet points), connected to the vertexes, the centers of the edges.

Arbitrary points in the unit cell.
In table 9, the Wyckoff positions of the group of full symmetry of the cubic cell and those of one of the subgroups are compared. These two groups have common generators of the Wyckoff positions. However, in some of them, the number of equivalent positions differs. By making use of such positions and stationing atoms in them, we can switch the crystal symmetry. For example, take the Wyckoff positions given in the 7th low. They are in the orbit of the generating point . The group of No.11 and No.10 are isomorphic to the symmetric group S and the alternative group A respectively. In the full symmetry, given by the group of No.11, the orbit is composed of 12 points. On the other hand, in the reduced symmetry of the group No.10, these 12 points is split into two orbits, each of which includes 6 points. If atoms (say, of type W) are positioned in all of 12 points in the cubic lattice, the crystal symmetry remains unaltered as that of the group of No.11. However, if, in the half part of them, at the Wyckoff positions of the Group No.10, the atoms are replaced by those of type B, the crystal symmetry is reduced to the group of No.10. Those Wyckoff positions are illustrated in Fig. 3, where two split orbits are shown in B(black) and W(white) atoms.
Group NO.11  Size  Group NO.10  Size 
(#G=24)  (#G=12)  
[0,0,0]  1  [0,0,0]  1 
[1/2,1/2,1/2]  1  [1/2,1/2,1/2]  1 
[0,1/2,1/2]  3  [0,1/2,1/2]  3 
[1/2,0,0]  3  [1/2,0,0]  3 
[t,0,0]  6  [t,0,0]  6 
[t,1/2,1/2]  6  [t,1/2,1/2]  6 
[t,0,1/2]  12  [0,t,1/2]  6 
[1/2,t,0]  6  
(Split in two)  
[t,t,0]  12  not existent  0 
[t,t,1/2]  12  not existent  0 
[t,t,t]  8  [t,t,t]  4 
[t1,t2,t3]  24  [t1,t2,t3]  12 
v.2 Control of band gaps by means of the Wyckoff positions
In this section, the example of the material design discussed in the previous section is presented; in which abinitio electronic structure calculations are executed, where the symmetry of the crystal is artificially altered and the band gaps are controlled.
The exemplar calculation goes in the following way: in order to alter the crystal symmetry, certain coordinate points are chosen; and at these localities we put impurities, which interact to electrons with shortranged potentials; these impurities are assumed to be neutral; therefore they do not alter the net charge. The change in the symmetry of the crystal will be caused by the presence of impurities, the effects of which are expressed by model potentials with adjustable parameters. We use the following form of the scattering potential. It is given in the real space as
(29) 
where is the volume. We use two parameters, i.e. (strength)and (range). The reciprocal space representation is
(30) 
where is the volume, required in the normalization of the plane wave .
A simple example is taken from diamond band structure. The coordinate of the carbon atoms are
(31)  
The lattice vectors are
(32)  
In this structure, the lowest eight eigenvalues at point are shown in table 10.
2.11  19.58  19.58  19.58  25.14  25.14  25.14  33.14  

Representation  x.1  x.10  x.10  x.10  x.7  x.7  x.7  x.2 
There are two set of threefold degeneracy above and below the band gap, the energy levels of which are at 19.58 a.u. and 25.14 a.u.. (The irreducible representations to them are x.10 and x.7 respectively, as given in the previous section.)
The band gap (in exact terms, the degeneracy of the eigenvalues) is modified by the insertion of a single impurity in the crystal. Its position is chosen at . The point group of the genuine diamond structure ( of the order of 48) is reduced to its subgroup (of the order of 12.) The symmetry operations of the subgroup are shown in table 11.
R11  R12  R13  R21  R22  R23  R31  R32  R33  T1  T2  T3  

1  1  0  0  0  1  0  0  0  1  0  0  0 
2  0  1  0  0  0  1  1  0  0  0  0  0 
3  0  0  1  1  0  0  0  1  0  0  0  0 
4  0  1  0  1  0  0  0  0  1  1/4  1/4  1/4 
5  1  0  0  0  0  1  0  1  0  1/4  1/4  1/4 
6  0  0  1  0  1  0  1  0  0  1/4  1/4  1/4 
7  1  0  0  0  1  0  0  0  1  1/4  1/4  1/4 
8  0  1  0  0  0  1  1  0  0  1/4  1/4  1/4 
9  0  0  1  1  0  0  0  1  0  1/4  1/4  1/4 
10  0  1  0  1  0  0  0  0  1  0  0  0 
11  1  0  0  0  0  1  0  1  0  0  0  0 
12  0  0  1  0  1  0  1  0  0  0  0  0 
The character table of this subgroup is given in table 12. The rows S1,…,S6 show the character values of the subgroup, and the rows G7 and G10 shows those of the group of the full diamond symmetry (without impurity).
1  2  3  4  5  6  7  8  9  10  11  12  
S.1  1  1  1  1  1  1  1  1  1  1  1  1 
S.2  1  1  1  1  1  1  1  1  1  1  1  1 
S.3  1  1  1  1  1  1  1  1  1  1  1  1 
S.4  1  1  1  1  1  1  1  1  1  1  1  1 
S.5  2  1  1  0  0  0  2  1  1  0  0  0 
S.6  2  1  1  0  0  0  2  1  1  0  0  0 
x.7  3  0  0  1  1  1  3  0  0  1  1  1 
x.10  3  0  0  1  1  1  3  0  0  1  1  1 
In the rows of the table, there are two relations : x.7=S.2+S.5 and x.10=S.1+S.6; which are called matching relations.(In some mathematical context, they are referred as branching rules.) These relations indicate the threefold degeneracy in the energy levels in the full diamond symmetry split into two irreducible representations S.2 and S.5, or S.1 and S.6 with the presence of an impurity. The character values of the identity element, shown in the second columns from the left, are the degeneracy of the energy levels; so we can predict the threefolddegeneracy split into two different levels, viz. twofold and single levels.
To inspect this, the actual computation is executed; where the impurity potential is set to be a weak Gaussian form. For example, set the parameters in eq.30 as . The lowest eight eigenvalues are given in table 13. The prediction by group theory is realized there.
2.18  18.86  19.67  19.67  25.04  25.18  25.18  33.13 
In the practice of the artificial material design, for example, the following demand will arise:
Demand: How to substantiate the situation, in which the band gap is altered, but the degeneracy of the energy levels is unaffected?
Let us proceed with the example of diamond. In the diamond structure, there are plural possible Wyckoff positions.(The computation can be done by GAP.) For example, chose the position of . By the symmetry operations it is transformed in three other points such as: . If impurities are stationed at these four points, there is no change in the point group; thus the degeneracy of the energy spectrum remains unchanged. The computed energy spectrum is given in table 14, which guarantees the validity of the group theory. The band dispersions along are shown in Fig. 4, in which that of the basic diamond structure, and that with single impurity, and that with four impurities are compared.
2.41  18.83  18.83  18.83  25.11  25.11  25.11  33.07 
There is a certain noteworthy point in these two cases (of the single impurity , and of the four impurities). In the former, the single impurity is located at; this point is one of the Wyckoff positions in the point group of the crystal with the deteriorated symmetry; it remains fixed by any symmetry operation and not transformed into other positions; however, this point also belongs to the Wyckoff position of the perfect diamond crystal and there transformed to four points. We can interpret this circumstance as follows: the former example corresponds to a situation, where the only one of the four Wyckoff position in the latter case is chosen, so that the symmetry of the crystal could be reduced. In a similar way, (but in a more general and liberal way, by inserting extra atoms or excavating vacancy site) we can reduce the crystal symmetry for the purpose of controlling the band structure; by doing this we can cleave into the degeneracy of the energy spectra and open extra energy gaps.
v.3 A possible plan of material design in the supercell
Now we have seen that the band structure is controllable by the presence of impurities or defects, although the presented example is of instructive purpose, and not realistic, as an only model case for the sake of illustrating possible form of theoretical material design. The diamond structure is compressed in such a compact cell that the supernumerary atoms could not be actually stationed at arbitrary places, such as at Wyckoff positions. Meanwhile, in recent decades, crystalline materials which has a large unit cell such as InO have been put into practical use. At a glance, InO seems to have a huge complex structure. However, actually, it is a supercell composed from the stacking of bodycentered lattice of InO, with oxygen vacancies. The band dispersion is almost freeelectron like; its behavior under the presence of doped Sn, viz. impurities in the cell, can be understood by the group theoretical view[16]. Furthermore the modern material composing technologies, such as epitaxial growth, or micro atomscale probes, may enable us to realize such microscopic disposition of atoms in supercell structure, which will lead to actual phase of material design. In the supercell, there is a more broad freedom in atomic arrangement, in which certain atoms could be replaced or removed so that the periodical arrangement of impurities or defects should be permitted.
Now a principle of material design based on group theoretical view can be proposed.

Chose a certain crystal as a starting point: this crystal should have small and simple unit cells.

Consider an enlarged cell, composed of the stacking of the minimal unit cell. (The crystal axes may be cut anew and a supercell should be created.)

We can determine the band structure and the band gap of the enlarged cell, simply by folding the band structure of the minimal cell.(The folding of the band structure is to redistribute kpoints of the old Brillouin zone to the new one in accordance with the new periodicity and to redraw the band dispersion by means of new kpoints.)

Suppose a situation where the symmetry is reduced by the formation of supercell with atomic displacements. Check the possibility of the opening of the extra band gaps (or the splitting of the degeneracy) at kpoints with high symmetries, such as at points and the boundary of the Brillouin zone. The group theoretical view, such as the character theory, the compatible relation, the subgroup lattices, or the Wyckoff positions, should be fully made use of. The change in the band structure may be quantitatively evaluated by simple perturbation theory. These sorts of trialanderrors, by tracing the sequence of crystal symmetry, will help us to search crystal structures with more desirable band structure.
Vi Technical details
In the preceding sections of the article, the basics for the usage of computer algebra, concerning the computation of group theoretical properties, are explained and applied to the analysis of the wavefunctions. Moreover, the possible scheme for controlling band gaps, by means of tracing the sequence of subgroups, which corresponds to the reduction of crystal symmetry, is suggested through simple electronic structure computations. Meanwhile, in this part, the topics are rather promiscuous and technical, such as the computation of characters of the group of the super cell by means of “semidirect product” which is an effective way to extend groups, or the special treatment for nonsymmorphic crystal, and so on. Moreover, “mathematical first principle” of crystal formation is demonstrated based on the cohomology theory, which shall explain us how specific types of crystals, finite in number, can exist in accordance with the actions of certain point groups. The topics might arrive at somewhat higher mathematics, that may be not wellknown to physicists. However, with the aid of computer algebra, one can conquer such hardships so that he might actually execute necessary computations. As for the fundamental knowledge of the group theory and its application, the reader should consult with standard references, such as Refs. 1, 2, 3, 4, 5, 6 for the group theory, such as Refs. 7, 8, 9 for the representation theory, such as Refs. 10, 11 for the algorithm in the computer algebra. We make use of the computer algebra package GAP[12], as well as in the previous sections.
vi.1 Determination of crystal symmetry
It is essential for us to determine the crystal symmetry in order to execute the group theoretical analysis. The symmetry operations which fix the crystal axes and atomic coordinates must be listed to construct the point group. The determination algorithm of the point group is composed of the following two stages.
Stage 1.
Determination of the point group of the lattice.
Let be the lattice vectors. There are two large categories of the crystal system; the one of which is hexagonal, and the other is cubic. In the former, rotations along the crystal axis by 60 degrees are allowed; in the latter, the rotations of this kind are composed of those by 90 degrees. The point group of arbitrary crystal system is given as a subgroup which is reduced from the full hexagonal or cubic symmetries. The full set of the symmetry operations (i.e. rotation matrices) for the hexagonal or cubic symmetry should be prepared, and from which admissible operations are extracted.
For each operation of the full symmetry group, compute the rotation of the lattice vectors:
(33) If the vector protrudes out of the unit cell, it must be pulled back according to the crystal periodicity. Hereafter the pulling back of a vector into the unit cell is denoted as . For example, for integers , then exactly .
Then store the operation such as
for all (=1,2,3), with a threshold value ( This is an attention needed only in the floatingpoint computation.) From the stored set of admissible operations , the point group of the crystal system is determined; in this stage, however, the symmetry preservation in the atomic positions is not yet checked.
Stage 2.
Determination of the point group of the crystal.
The symmetry operations which fix atomic coordinates should be extracted now. The atom transformation table, the fractional translations associated to each rotation, and the multiplication table should be provided at the same time. Let and be entries in the set of atomic positions , and let T(X) and T(Y) be the corresponding type of atoms.
For each , and for each , compute ; and chose every such as T(X) = T(Y). Now the vector is a candidate for the fractional translation associated to R. If is the admissible fractional translation to , the following conditions should be satisfied.
Condition: for all in the atomic coordinates, there exist a such that
and
If this condition is satisfied, store and as a symmetry operation in the point group of the crystal.
This algorithm works well if the unit cell is minimal, in the sense that the fractional translation is uniquely determined; i.e. with respect to one symmetry operation of , other operations, such as , do not coexist in the point group operations. If the unit cell is not minimal, in other words, if it is a supercell (the accumulation of the minimal unit cell), the existence of plural for one cannot be negligible. The readers will be able to find and utilize subroutines or functions purposed for the identification of the crystal symmetry (possibly with more efficacy than the algorithm in this section)in the band calculation packages of one’s own.
vi.2 Symmetry operations in the reciprocal space
As for the plane wave, the symmetry operation in the realspace is given as
(34) 
Consequently, it is more convenient to give operations with respect to reciprocal lattice vectors in the wave number space. If the wavenumbervector is expressed as , the rotation matrix for coefficients in the rotated vector is given as
(35) 
Thus the rotation matrix for the coefficients is computed from that in the Euclidean space as:
(36) 
where are primitive lattice vectors.
For the case of the facecentered unit cell, the gap computation is done as:
gap> A:=[ [ 0, 1/2, 1/2 ], [ 1/2, 0, 1/2 ], [ 1/2, 1/2, 0 ] ];; gap> RM:=[ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ];; gap> TransposedMat(A^1*TransposedMat(RM)*A); [ [ 1, 0, 0 ], [ 1, 0, 1 ], [ 1, 1, 0 ] ]
The rotation matrices in the reciprocal space, as well as those in the real space, are given in the appendix for cubic and hexagonal symmetries.
vi.3 The computation of the compatibility relation
The irreducible representation of the diamond structure shows branching if the kpoint moves from point to nonzero kpoint. The situation of the branching (the compatibility relation) can be checked by GAP. For this purpose, the computation goes as follows:

Compute the character table for the small group. Then, for each representation, evaluate the characters of elements in the small group, and store them in the lists . (Let N be the number of the representations of the Small group.)

Compute character values of elements in the small group, using the irreducible representation at point, and store them in the lists .(Let M be the number of the representations of the point group.)

If the jth irreducible representation (G.j) branches into the composition of those in the small (S.i) as follows
(37) the coefficients are computed by the inner product of the lists as
(38) where is the order of the small group.
For this purpose, this function can be used:
GetCompati:=function(A,B) local repA,repB,AV,BV,CV; repA:=Irr(A); repB:=Irr(B); if ( false=IsSubgroup(A,B) ) then Print("A < B ; Inverse A and B."); return; fi; AV:=List(repA,y>List(Elements(B),x>x^y)); BV:=List(repB,y>List(Elements(B),x>x^y)); CV:=AV*TransposedMat(BV)/Size(B); return CV; end;
Symmetry operations defined in wavenumber space are used here. These matrices are three dimensional ones given in Table 45.(They are stored as “MT[ ]” in the following.) The coordinate of the K point along point is given, as the coefficients to reciprocal lattice vectors.
gap> kx:=[0,1,1]; [ 0, 1, 1 ]
The symmetry operations which fix the kpoint are extracted, and from them the small group is generated.
gap> FL:=Filtered(MT,i>i*kx=kx); [ [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ], [ [ 1, 0, 0 ], [ 1, 0, 1 ], [ 1, 1, 0 ] ], [ [ 0, 1, 1 ], [ 0, 0, 1 ], [ 1, 0, 1 ] ], [ [ 0, 1, 1 ], [ 1, 1, 0 ], [ 0, 1, 0 ] ], [ [ 0, 1, 1 ], [ 0, 1, 0 ], [ 1, 1, 0 ] ], [ [ 0, 1, 1 ], [ 1, 0, 1 ], [ 0, 0, 1 ] ], [ [ 1, 0, 0 ], [ 0, 0, 1 ], [ 0, 1, 0 ] ], [ [ 1, 0, 0 ], [ 1, 1, 0 ], [ 1, 0, 1 ] ] ]
We can directly construct the small group from the above list of the output. For the purpose of the comparison of the representations, however, the point group and the small group must be expressed by common abstract symbols such as “m1,m2,…”, which are employed to make up the multiplication table.(There is an alternative: the point group could be constructed from the 48 matrices of symmetry operations in wavenumber space.)
gap> FL:=List(FL,i>Position(MT,i)); [ 1, 2, 19, 20, 27, 28, 41, 42 ] gap> FL:=List(FL,i>Elements(G)[i]); [ m1, m2, m19, m20, m27, m28, m41, m42 ] gap> GS:=Group(FL); <group with 8 generators>
The character table of the full point group GN is given as:
gap> ConjugacyClasses(GN); [ m1^G, m2^G, m5^G, m13^G, m14^G, m25^G, m26^G, m29^G, m37^G, m38^G ] gap> Display(Irr(GN)); [ [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 2, 2, 1, 0, 0, 2, 2, 1, 0, 0 ], [ 2, 2, 1, 0, 0, 2, 2, 1, 0, 0 ], [ 3, 1, 0, 1, 1, 3, 1, 0, 1, 1 ], [ 3, 1, 0, 1, 1, 3, 1, 0, 1, 1 ], [ 3, 1, 0, 1, 1, 3, 1, 0, 1, 1 ], [ 3, 1, 0, 1, 1, 3, 1, 0, 1, 1 ] ]
The character table of the small group is as follows:
gap> List(ConjugacyClasses(GS),Elements); [ [ m1 ], [ m2 ], [ m19, m20 ], [ m27, m28 ], [ m41, m42 ] ] gap> Display(Irr(GS)); [ [ 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1 ], [ 2, 2, 0, 0, 0 ] ]
The branching relations are computed now:
gap> Display(GetCompati(GN,GS)); [ [ 1, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0 ], [ 0, 0, 1, 0, 0 ], [ 0, 0, 0, 1, 0 ], [ 0, 1, 0, 1, 0 ], [ 1, 0, 1, 0, 0 ], [ 1, 0, 0, 0, 1 ], [ 0, 0, 0, 1, 1 ], [ 0, 0, 1, 0, 1 ], [ 0, 1, 0, 0, 1 ] ]
This output list should be read as the indication of the following branching relation:
POINT GROUP SMALL GROUP G.1 > S.1 G.2 > S.2 G.3 > S.3 G.4 > S.4 G.5 > S.2 + S.4 G.6 > S.1 + S.3 G.7 > S.1 + S.5 G.8 > S.4 + S.5 G.9 > S.3 + S.5 G.10 > S.2 + S.5
vi.4 The character table at the boundary of the Brillouin zone
vi.4.1 The necessity of the special treatment for the nonsymmorphic crystal
In general nonzero kpoints, the wavefunctions are apportioned to representations different to that of point. The new representations are deduced from subgroups of the point group; the subgroup admissible to each kpoint must be composed of operations which fix that kpoint. The invariance on the kpoint by symmetry operations should be kept up to the periodicity of the wavespace. Thus at the boundary of the Brillouin zone, different but equivalent kpoints are mingled together in the representation. In general, it is sufficient to chose the subgroup which connects equivalent kpoints and compute the representation in the same way as in point. However, in special cases, this naive approach inevitably fails owing to the existence of twodifferent kind of crystal structures, i.e. the distinction between the symmorphic and nonsymmorphic ones. Let us review this troublesome situation.
The matrix representation could be written as
(39) 
Then the product is
(40) 
The product should be equal to this:
(41) 
These equations lead to the relation:
(42) 
Certain conditions are required so that the above relation should be valid:

The k point is inside the Brillouin zone; does not move (i.e. ). At point, this condition is always satisfied.

The k point is located at the boundary of the Brillouin zone: the vector may coincide with a certain reciprocal vector due to the periodicity on the wave space. The subgroups of the operations of these kind are called small groups. In addition the should be zero or a lattice translation vector in the real space.
The crystal structure, in which the second condition always holds, is said to be symmorphic. In certain types of crystals, however, there exist affine mappings with non zero , which are fractions of some lattice translational vectors. This type of the crystal is called nonsymmorphic. Indeed, the diamond structure is nonsymmorphic one, as can be seen in the symmetry operations for this crystal. For the nonsymmorphic case, therefore, the relation to be satisfied with respect to the product of the matrix representation does not hold at the boundary of the Brillouin zone. Thus it is necessary to employ special methods to treat this case. One of these treatments was proposed by Herring[14]. The intuitive interpretation of this method could be given in the following way. One should bear in mind these two points: First, at point, there is no problem in the representation even in the nonsymmorphic case. Secondly, the kpoint at the boundary of the Brillouin zone can be pull back at point, if the unit cell is extended. For example, in a onedimensional crystal with the lattice constant of , the kpoint is at the boundary of the Brillouin zone. However, when the doubled unit cell (with the lattice constant ) is assumed, the kpoint agrees with the new primitive reciprocal lattice vector; hence it is equivalent to the point. The irreducible representation at in the small original cell can be deduced from that at point in the enlarged cell. Thus the difficulty in nonsymmorphic representation can be eluded. We shall examine the actual computation of this method in the next section.
vi.4.2 Herring Method: An example
Assume a double array of atoms, as in the Fig. 5. This figure shows two types of onedimensional periodic lattice, consisted by double lines of atoms. In case I, two rows forms one dimensional periodic system of squares. In case II, the two lows are shifted by half of the lattice constants. The latter is of nonsymmorphic type. The symmetry operations which fix the kpoint at for the latter case is given as
(43)  
From the aforementioned reasons, the irreducible representation of this group is not the proper one to represent the small group at .
According to the Herring method, instead of this, a factor group G/I should be made use of, where G is a group of infinite order, composed of
(44)  
and I is the normal subgroup composed of
(45) 
This factor group is the point group in the unit cell extended twofold in x direction. By extending the unit cell, the kpoints at the boundary of the original Brillouin zone are pulled back at point in the new Brillouin zone. As the newly allotted point is of the zero vector, the mathematical difficulty in the representation can be avoided. This situation should rather be interpreted as follows: the wavefunction at has the periodicity of , that is two times as large as the original lattice width. On the other hand, the wavefunction at in the original Brillouin zone also matches into the periodicity of .(Because originally it has periodicity of ) In the representation at the new point, those in the old point and the old boundary point are mingled with each other. These two different contributions, however, can be distinguishable. Let us check the character of the elements of following types , viz. of the simple fractional translations in the extended cell, in which the linear operation is the identity. With respect to the representation of the boundary of the Brillouin zone of the original smaller cell, the representation matrix should be represented as ; character of which is equal to ( d is the dimensionality of the representation). From Table 16 we can see the proper irreducible representation at is given by alone.
[,]  [,]  g’  
1  1  1  1  1  
1  1  1  1  1  
1  1  1  1  1  
1  1  1  1  1  
2  2  0  0  0 
The prediction by the character table can be verified. The electronic structure calculation is executed to the mismatched double allay of Na atoms: The two atoms are placed at in the unit cell with and au. This computation affirms that every pair of eigenvalues at the boundary of the Brillouin zone shows the doublefold degeneracy.
k=0  2.775  2.124  0.506  0.479  0.139  0.753  0.780  1.054 

k= /a  0.717  0.717  0.072  0.072  1.501  1.501  1.528  1.528 
The above example is a simple onedimensional model. For a nonsymmorphic three dimensional crystal, the irreducible representation for the kpoint at the boundary of the Brillouin zone can be computed in the similar way. For this purpose we should set up a supercell structure, the periodicity of which should be equal to that of the wavefunction at the boundary kpoint in consideration; the symmetry operations to be taken into account of must be confined to ones which fix the boundary kpoint up to the periodicity of the old Brillouin zone of the small cell. (To consider the full symmetry of the new supercell may be superfluous); the irreducible representation at point in the supercell is mixture of the wavefunctions at point and the kpoint in consideration, but we can distinguish them by the comparison of the character of the pure fractional translation. The example of the three dimensional case is the irreducible representation of diamond structure in the facecentered cell at X point . The necessary supercell is the cubic unit cell. We can check this: the primitive lattice vectors in the cubic cell is expressed by those in the facecentered cell as , and ; so there are relations as , and . These relations indicate that the wavefunction at
Comments
There are no comments yet.