Combining Symmetries



next up previous contents index
Next: Constraints Up: Symmetries Previous: Symmetries

Combining Symmetries

    The independent symmetries can be combined to give more complicated relations among an objects' indices. The simplest combination is a set of symmetries that do not overlap, i.e. the indices involved in one symmetry are not involved in any other. In this case, the symmetries are simply listed one after another; it is conventional to order them by each leading pointer. Interleaved symmetries are not supported.

If the symmetries are nested, more care is required (see also §2.2.3 below). A symmetry that fits into a block of a larger symmetry should be matched by similar symmetries in each remaining block, if this is not done the system will generate incorrect results. The ordering of the symmetries is very important: the small non-overlapping symmetries must come before the larger ones that encompass them. The ordering should be first by block size, and then by leading pointer. The correct ordering is not checked by REDTEN, and unpredictable (and incorrect) results are likely. A Hermitian symmetry, if any, must be the last indicated.

The full description of an objects' symmetries is a list of independent symmetries, in order by block size and leading pointer. Some typical examples follow:

'((-1 1 2)(-1 3 4) (2 1 3))
--- The full Riemann symmetry: anti-symmetric in the first pair of indices, anti-symmetric in the second pair (the third and fourth indices), and symmetric in blocks of two indices.
'((1 1 2))
--- The symmetry typical of a metric (or many other rank-2 symmetric objects).
'((c 1 2 3))
--- An object symmetric in the second and third indices, where odd permutations also involve a conjugation (this is used for the spin-matrices, see §6.2).

As with the indextype parameter, an extension to the symmetry list syntax allows the user to create a new object with symmetries derived from another object. If an indexed object name appears in place of the symmetry list, that objects' symmetries are used for the new object. If an indexed object name appears in the symmetry list, that objects symmetries are inserted into the symmetry list for the new object. Currently, no adjustment of pointers is made, so this is useful only if new symmetries can be added after those of the other object.



next up previous contents index
Next: Constraints Up: Symmetries Previous: Symmetries



John Harper
Wed Nov 16 13:34:23 EST 1994