# Symmetries and Transformations

A polyomino can be *transformed*, by flipping it across an axis or diagonal, or rotating it a multiple of 90°. When a transformation returns an identical polyomino to what we started with, we say that the polyomino is *symmetric*. Polyominoes can be divided into symmetry classes based on the types of symmetries they have:

- Asymmetry: when no transformation returns an identical image.
- Reflective over an axis: when reflection over one of the axes yields the same image.
- Reflective over a diagonal: when reflection over a diagonal yields the same image.
- 180° rotational: when a 180° rotation yields the same image.
- Reflective over both axes: when reflection over both axes yields the same image.
- Reflective over both diagonals: when reflection over both diagonals yields the same image.
- 90° rotational: when a 90° rotation yields the same image.
- Full symmetry: when all the above transformations yield the same image.

Polyominoes whose symmetries are considered seperately are called fixed polyominoes. When rotations are considered the same polyomino, but not reflections, they are called one-sided polyominoes. When all transformations are counted as the same polyomino, they are called free polyominoes. We usually want to deal with free polyominoes, but fixed polyominoes are easier to count. Understanding symmetries helps us convert from fixed to free polyominoes.

The octominoes are the smallest size for which a mino from each symmetry class is represented:

The next smallest size that has all symmetries is $n = 12$, the dodecominoes.