Downloads

    "Among scientists are: collectors, classifiers, and compulsive tidiers-up."
    - Sir Peter Medawar, The Art of the Soluble
  1. Bouwkamp Codes(zipped txt)
  2. Catalogues of Squared Rectangles
  3. Catalogues of Squared Squares
  4. Catalogues of Right Isosceles Triangle Tilings
  5. Software

Bouwkamp code

Squared rectangles and squared squares are often represented in a concise form known as Bouwkamp code (or bouwkampcode), named after C.J. Bouwkamp who invented this notation and popularised its use.

69 x 61 Squared Rectangle

Bouwkamp code consists of a string of numbers giving firstly the number of squares in the dissection (called the Order), the width and height of the square dissection, where width >= height, and finally the sizes of the squares of the tiling, often called the elements, as integers e1, e2, e3, ... en (with or without parentheses or commas), which are arranged from left to right and then top to bottom.

In the published literature parentheses and commas are used to group consecutive squares in a horizontal row and the groups are in order of decreasing height.

The Bouwkamp code parentheses are not required to reconstruct the tiling but they make it easier to sketch a tiling by hand and all published literature uses them. Bouwkamp code without parentheses and commas has been named tablecode and introduced by J.D. Skinner. It is simpler and shorter. The bouwkampcode and tablecode for the 69 x 61 Squared Rectangle figure above is 9 69 61 (36,33)(5,28)(25,9,2)(7)(16) and 9 69 61 36 33 5 28 25 9 2 7 16. Tablecode, bouwkampcode and Bouwkamp code are used interchangeably in this site.

Extended Bouwkampcode

There are several additional fields which are sometimes included in the Bouwkampcode, we can call these codes Extended Bouwkampcode ; In datafiles from this site the additional fields are included after the main bouwkampcode. An asterix * is used to divide the bouwkampcode fields from the additional fields. These additional fields are used for captions, ie placing information such as the tiling id, discoverer, isomer number, year of discovery underneath the tiling in illustrations in webpages such as those on this site or in the production of postscript images of squared squares.

Rotations and reflections of a square tiling may create different Bouwkamp codes. Canonical Bouwkamp code is the unique code which is the highest Bouwkamp code, the one that is numerically largest (comparing elements going left to right) from the Bouwkamp codes of all possible rotated and reflected versions of that square tiling.

If squared rectangles and squared squares are put into canonical Bouwkamp code form, duplicates of existing tilings can easily be identified, new discoveries can be verified and complete catalogues for many low order tilings can be made in a compact text form, suitable for computer data processing, document production, browser viewing and computer graphics rendering.

For SPSRs the canonical Bouwkamp code is also the one corresponding to the dissection where the largest corner element is in the top left corner and is listed first out of the elements. This is easy to check.

For SPSSs only the first two elements need to be examined for highest Bouwkamp code, that is the largest square in the top left corner and largest square adjacent to it, which goes on its right. These two elements are the first and the second listed elements in the canonical Bouwkamp code.

For Imperfect tilings (SISSs, SISRs) it may be necessary to examine all elements in the Bouwkamp code to determine the canonical highest Bouwkamp code.

We refer to different squared squares with the same elements as isomers. The smallest order for SPSS isomers is 25 for pairs and 28 for triples. By definition a CPSS is one of at least four isomers. A CPSS is one of up to 8 isomers in order 25, 16 isomers in orders 26 and 27, and 48 isomers in order 28. The Sprague square of order 55 is one of 12,582,912 isomers! For every order there is a CPSS catalogue with only a representative CPSS for each set of isomers. For the lowest orders there are also catalogues which include all the isomers.

Unfortunately many CPSS in the published literature are not recorded in any discernably consistent canonical Bouwkamp code representation.

The catalogues of representative CPSSs are being converted in 2012 so that every representative CPSS is determined according to the same set of rules, which appear below. Most of the website catalogues are in this form already.

Each simple subrectangle in a canonical representative CPSS is in 'standard form' so that, sometimes after first rotating the square one quarter turn clockwise, the subrectangle is seen with its longer side horizontal and its largest corner element in the upper left corner. This is how SPSRs are depicted in their catalogues. This also applies to a simple subrectangle with a missing corner element as if that element were present, but without any restriction on the amount by which the square may first be turned (example: CPSS 30:705c), only that the squared subrectangle is not a mirror image of its standard form.

Occasionally, when two subrectangles (with or without a missing corner element) overlap by sharing a corner element, it may not be possible for both subrectangles to be oriented in the desired form.

The canonical representative CPSS is an isomer with the most subrectangles, including those which contain smaller subrectangles. In practice this means;

The canonical representative is the CPSS isomer with the 'highest Bouwkampcode' (by element values, not lexicographically) that complies with the above rules.

J.D. Skinners Bouwkamp codes

J.D. Skinner has supplied the following listing and tablecode for squared squares from orders 21 to order 30. This file has not been updated since 2003..

biglist.zip(41k) has a listing of the squared squares by order, size/id and type (SIMP/COMP) - the size/id is different from the system used on this website, it is a concatenation of the size and an uppercase alpha character(s) where ALL perfect squared squares of a given order (both SPSS and PSS) are indexed. The size/id in biglist.zip is used to refer to the corresponding Bouwkamp code in the 00table.zip file. Discoverers initials are included.

00table.zip(558k) contains the corresponding Bouwkamp codes (in tablecode form).

David Moews Bouwkamp codes

David Moews has an explanation and an example of the use of Bouwkamp code.

David Moews homepage has Bouwkamp codes of all simple perfect squared rectangles (SPSR) of orders from 9 to 16, and Bouwkamp codes of all perfect squared squares (PSS) of orders from 21 to 24 (and some of orders from 25 to 27.)

A.J.W. Duijvestijn's order 26 SPSS, 2x1 SPSR paper and Bouwkamp codes

The AMS has provided a free download of Duijvestijn's paper on Order 26 simple perfect squared squares (SPSSs) and 2x1 simple perfect squared rectangles (SPSRs). Copies have been supplied of the missing Bouwkamp codes TableI Order 26 SPSSs and TableII Order 26 2x1 SPSRs which originally accompanied the paper.

Catalogues of Perfect Squared Squares

Simple Perfect Squared Squares, (SPSSs) Orders 21+. Pdfs, bouwkampcodes & tablecodes.

      SPSS Order 21 (Complete)

    1. (1) SPSSs Order 21, (5k Pdf)
    2. SPSS bouwkampcode Order 21,
    3. SPSS tablecode Order 21,

      SPSSs Order 22 (Complete)

    1. (8) SPSSs Order 22, (14k Pdf)
    2. SPSSs bouwkampcode Order 22,
    3. SPSSs tablecode Order 22,

      SPSSs Order 23 (Complete)

    1. (12) SPSSs Order 23, (19k Pdf)
    2. SPSSs bouwkampcode Order 23,
    3. SPSSs tablecode Order 23,

      SPSSs Order 24 (Complete)

    1. (26) SPSSs Order 24, (39k Pdf)
    2. SPSSs bouwkampcode Order 24,
    3. SPSSs tablecode Order 24,

      SPSSs Order 25 (Complete)

    1. (160) SPSSs Order 25, (220k Pdf)
    2. SPSSs bouwkampcode Order 25,
    3. SPSSs tablecode Order 25,

      SPSSs Order 26 (Complete)

    1. (441) SPSSs Order 26, (619k Pdf)
    2. SPSSs bouwkampcode Order 26,
    3. SPSSs tablecode Order 26,

      SPSSs Order 27 (Complete)

    1. (1152) SPSSs Order 27, (1.6M Pdf)
    2. SPSSs bouwkampcode Order 27,
    3. SPSSs tablecode Order 27,

      SPSSs Order 28 (Complete)

    1. (3000) SPSSs Order 28, (4.4M Pdf)
    2. SPSSs bouwkampcode Order 28,
    3. SPSSs tablecode Order 28,

      SPSSs Order 29 (Complete)

    1. (7901) SPSSs Order 29, (11.1M Pdf)
    2. SPSSs bouwkampcode Order 29,
    3. SPSSs tablecode Order 29,

      SPSSs Order 30

    1. (4564) SPSSs Order 30, (6.9M Pdf) incomplete
    2. SPSSs bouwkampcode Order 30, incomplete
    3. SPSSs tablecode Order 30, incomplete

      SPSSs Order 31

    1. (294) SPSSs Order 31, incomplete
    2. SPSSs bouwkampcode Order 31, incomplete
    3. SPSSs tablecode Order 31, incomplete

Compound Perfect Squared Squares (CPSSs) Orders 24+. Pdfs, bouwkampcodes & tablecodes.