 Most simply, given a list of polyominoes of order "n", squares may be added next to each polyomino in each possible position, and the resulting polyomino of order "n"+1 added to the list if not a duplicate of one already found; refinements in ordering the enumeration and marking adjacent squares that should not be considered reduce the number of cases that need to be checked for duplicates.This method may be used to enumerate either free or fixed polyominoes.A more sophisticated method, described by Redelmeier, has been used by many authors as a way of not only counting polyominoes (without requiring that all polyominoes of order "n" be stored in order to enumerate those of order "n"+1), but also proving upper bounds on their number.