All articles
GeneralExposition

From Sixteen Tiles to Fifty-One Kolams

How a puzzle based on kolam tiles meets graph theory, Boolean satisfiability, and the mathematics of symmetry.

KolamsCombinatoricsGraph theoryBoolean satisfiabilityBurnside's lemmaSymmetry

Prelude

Kolam at the threshold

At daybreak, many thresholds in Tamil Nadu become temporary drawing surfaces. The ground is swept, sometimes dampened, and a kōlam is drawn with rice flour, rice paste, or mineral powder. Historically practised and transmitted largely by women, kōlam belongs to the meeting place between home and street: it may be a gesture of welcome, a sign of auspiciousness, a daily discipline, and a work of art intended to disappear beneath footsteps, wind, rain, and time before being made anew. Cultural sources ↓

Pulli means “dot”. In a pulli kōlam, a grid of dots provides the scaffold from which lines are joined or woven. In the sikku or chikku variety, one or more closed strands loop around the dots, producing patterns that invite questions about symmetry, continuity, topology, algorithms, and counting.

கோலம் · kōlam — A temporary drawing can carry a durable idea: local choices accumulating into global form.

Mathematics is only one way of seeing kōlam. The practice also carries aesthetic, social, ritual, ecological, and personal meanings. We will study one deliberately simplified square-tile model of a sikku kōlam, not a classification of the living tradition. The model keeps a small local grammar visible, turns every rule into an exact condition, and leads to a surprising count.

From six shapes to sixteen tiles

Take a square tile and mark its centre with a dot. Draw curve segments that surround the dot and meet the midpoint of any chosen subset of the four sides; if no side is chosen, draw a closed loop inside the tile. Up to rotation, this gives six shapes. Once orientation is fixed, they yield sixteen distinct tiles.

Closed-loop kolam tile
1 tile
One-sided kolam tile
4 tiles
Corner kolam tile
4 tiles
Straight kolam tile
2 tiles
Three-sided kolam tile
4 tiles
Four-sided kolam tile
1 tile
1+4+4+2+4+1=16 oriented tiles1+4+4+2+4+1=\mathbf{16}\text{ oriented tiles}

To turn the pictures into mathematical objects, record only one piece of information about each side: does the curve meet the midpoint of that side? Read the sides in the fixed order east, north, west, south, writing 11 for “yes” and 00 for “no”. Each tile therefore receives a binary string of length four. For example, 1011\mathtt{1011} has exits to the east, west, and south, but not to the north. The label 0000\mathtt{0000} is not an empty tile: its curve closes inside the square and meets no side.

The sixteen square kolam tiles labelled from 0000 to 1111 in east, north, west, south order
The sixteen square kolam tiles, labelled from 0000\mathtt{0000} to 1111\mathtt{1111} in east–north–west–south order.

Try the puzzle before reading on

Drag the sixteen tiles into the 4×44\times4 frame in the Square Kolam Tile Challenge. The labels are fixed: you may move a tile, but you may not rotate it. Try to make every neighbouring pair agree and keep the fifteen nonzero tiles in one network.

Sandbox 01

Square Kolam Tile Challenge

Build a square kolam by placing each of the sixteen tiles exactly once. How to play: drag a tile from the tile grid to the construction board. You can also select a tile, then select a cell. Drag a board tile back to the tile grid to return it.

01

Construction board

0/16 placed
0boundary issues0matching issues0nonzero components
02

Kolam tiles

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

The board is empty. Choose a tile to begin.

Open Square Kolam Tile Challenge in the full Lab view ↗

Hint 1: read the frame as a string of zeros

Every north bit in the top row, south bit in the bottom row, west bit in the left column, and east bit in the right column must be 00. Cross out every position at which one of a tile’s 11s would point out of the square.

Hint 2: use the most constrained positions

A corner has two outward-facing sides. At the top-left corner, both the north and west bits must be 00, so only 0000\mathtt{0000}, 0001\mathtt{0001}, 1000\mathtt{1000}, and 1001\mathtt{1001} can occur there. Conversely, 1111\mathtt{1111} cannot lie on the boundary and must occupy one of the four central cells.

Hint 3: build a compatible frontier

Once one row is placed, its four south bits must be exactly the four north bits of the next row. Build row by row, while tracing paths from 1111\mathtt{1111}: a nonzero loop cut off from the unfinished board can never be repaired later.

A precise model of the board

We now give names to the board, the tile inventory, and the act of placing a tile. Let

V={(x,y):x,y{0,1,2,3}}V=\{(x,y):x,y\in\{0,1,2,3\}\}.

be the sixteen cells, with xx increasing eastwards and yy increasing southwards. Let T={0,1}4T=\{0,1\}^4 be the set of sixteen ENWS\mathrm{ENWS} words. For tTt\in T, write tEt_E, tNt_N,tWt_W, tSt_S for its four bits. A placement is a function

f:VTf:V\to T,

where f(x,y)f(x,y) is the globally oriented tile placed in cell (x,y)(x,y).

A successful board satisfies five precise conditions.

  1. Exact inventory. The map ff is a bijection: every cell receives one tile and every word in TT occurs exactly once.
  2. Horizontal matching. For 0x<30\le x<3 and 0y30\le y\le3, f(x,y)E=f(x+1,y)Wf(x,y)_E=f(x+1,y)_W.
  3. Vertical matching. For 0x30\le x\le3 and 0y<30\le y<3, f(x,y)S=f(x,y+1)Nf(x,y)_S=f(x,y+1)_N.
  4. Closed outer boundary. For every xx and yy, f(x,0)N=f(x,3)S=f(0,y)W=f(3,y)E=0f(x,0)_N=f(x,3)_S=f(0,y)_W=f(3,y)_E=0.
  5. Connectivity. Form a graph Γf\Gamma_f whose vertices are the sixteen cells, joining neighbours when their common matched bits are both 11. If z0=f1(0000)z_0=f^{-1}(\mathtt{0000}), then the subgraph on V{z0}V\setminus\{z_0\} must be connected.

Conditions 141\text{--}4 define a locally valid exact-inventory board. The fifth says that Γf\Gamma_f has exactly two components: the compulsory 0000\mathtt{0000} component and one component containing all fifteen nonzero tiles.

A small invariant with a large consequence

In each of the four bit positions, exactly eight of the sixteen words contain a 11. The complete inventory therefore has 3232 exits. Because every exit is paired with exactly one neighbour, every locally valid board has precisely 1616 active connections.

32 curve exits/2=16 graph edges,1615+1=2 independent cycles.\begin{aligned}32\text{ curve exits}/2&=16\text{ graph edges},\\16-15+1&=\mathbf{2}\text{ independent cycles}.\end{aligned}

After discarding the isolated 0000\mathtt{0000} vertex, every successful answer is a connected graph with 1515 vertices and 1616 edges. Its cyclomatic number is therefore 1615+1=216-15+1=2.

From a puzzle to satisfiability

A completely unrestricted placement has 16!=20,922,789,888,00016!=20{,}922{,}789{,}888{,}000possibilities. Every condition can be encoded using Boolean variables, while the local rules give us an efficient way to prune the search. For each cell vv and tile tt, introduce a variable

Xv,t=1    tile t occupies cell vX_{v,t}=1\iff\text{tile }t\text{ occupies cell }v.

There are 16×16=25616\times16=256 such variables. The puzzle is now a Boolean satisfiability problem, usually abbreviated to SAT. Bijection gives the “one tile per cell” and “one cell per tile” clauses; matching and boundary conditions forbid incompatible placements. Connectivity is global, so it can be checked afterwards by graph search or encoded with auxiliary reachability variables.

  1. One tile in every cell. Exactly one of the sixteen statements Xv,tX_{v,t} is true for each cell vv.
  2. Every tile used once. For each label tt, exactly one cell variable is true.
  3. Only compatible neighbours. Any pair of labels whose facing bits disagree is forbidden.
  4. No open boundary. A tile with an outward-facing 11 is forbidden in that position.
  5. Reach all fifteen tiles. A breadth-first search from the unique 1111\mathtt{1111} tile must visit every nonzero tile.

A general SAT solver can enumerate the answers. For this 4×44\times4 square, a row-by-row search makes the three reported counts particularly transparent.

1,4481{,}448 horizontally legal rows

Call R=(t0,t1,t2,t3)R=(t_0,t_1,t_2,t_3) a horizontally legal row when its four labels are distinct, its left and right outer bits are 00, and each pair of facing east–west bits agrees. Testing the 16151413=43,68016\cdot15\cdot14\cdot13=43{,}680 ordered four-tuples gives exactly 1,4481{,}448 such rows.

There is also a compact count. Record the five horizontal boundary and interface bits. The two outer bits are fixed at 00, while the three inner bits are free, giving eight paths from 00 back to 00. For each transition, the north and south bits are free; correcting for repeated transitions so that labels remain distinct gives 24+3192+2256+144+192=1,44824+3\cdot192+2\cdot256+144+192=1{,}448.

652652 locally valid boards

For each legal row, retain its four north bits, four south bits, and a sixteen-bit mask recording the labels it uses. Stack four rows only when adjacent north–south signatures match, the top and bottom boundary signatures are 0000\mathtt{0000}, and the four masks are disjoint and together contain all sixteen labels. Exactly 652652 boards pass those local matching, boundary, and inventory tests. The search is exhaustive because every board has one unique ordered decomposition into four rows.

408408 connected nonzero networks

Finally, construct Γf\Gamma_f for each of the 652652 boards and run a breadth-first search from 1111\mathtt{1111}. Exactly 408408 searches reach all fifteen nonzero vertices. The other 244244 boards obey every local rule but split the nonzero tiles into two or more components.

1,448 rows652 locally valid boards408 accepted boards1{,}448\text{ rows}\longrightarrow652\text{ locally valid boards}\longrightarrow\mathbf{408}\text{ accepted boards}
A horizontally legal rowA legal row whose horizontal edges match but which cannot occur in any complete locally valid board.
A horizontally legal row that cannot occur in any of the 652652 complete boards.
A locally valid but disconnected boardA complete locally valid board rejected because its nonzero tiles form several connected components.
A locally valid board rejected by connectivity. The colours distinguish components of sizes 9,3,3,19,3,3,1.
An accepted connected boardAn accepted board in which all fifteen nonzero tiles belong to one component and only the 0000 tile is isolated.
An accepted board: all fifteen nonzero tiles belong to one component, with only 0000\mathtt{0000} isolated.

When are two answers really the same?

Suppose you solve the puzzle and then turn the entire sheet through 9090^\circ. The picture has changed its orientation, but not its essential arrangement. The same is true if you reflect the whole square in a mirror.

A square has eight rigid symmetries. Together they form the dihedral group D4D_4: four rotations and four reflections.

Kolam 1 shown under the identity, three rotations, and four reflections, connected by arrows
Kolam 1 under the identity, three rotations, and four reflections. Solid arrows rotate the current picture through 9090^\circ clockwise; dotted arrows reflect it left–right.

The eight images of one board form its orbit. Counting “up to symmetry” means counting these orbits rather than individual labelled boards. But can we simply divide 408 by 8? Only if every orbit really has eight members. A highly symmetric board might have fewer, so we need a theorem that handles this possibility correctly.

Burnside’s lemma and the number 51

Let XX be the set of 408 accepted labelled boards. The eight symmetries of the square act on XX by moving a whole completed board. An orbit is the collection of boards obtainable from one another in this way, and our goal is to count these orbits.

Why not immediately divide 408 by 8? A board with its own symmetry could return to itself under more than the identity, making its orbit smaller than eight. Burnside’s lemma corrects for exactly this possibility. For a symmetry gg, let Fix(g)\operatorname{Fix}(g) be the accepted boards that gg leaves unchanged. Then

#(X/D4)=18gD4Fix(g)\#(X/D_4)=\frac{1}{8}\sum_{g\in D_4}\lvert\operatorname{Fix}(g)\rvert

The average comes from a double count. Count pairs (B,g)(B,g) for which gg fixesBB. Counting first by symmetry gives the sum above. If a board is fixed byss symmetries, its orbit contains 8/s8/s boards, and each is fixed by sssymmetries. Thus every orbit contributes (8/s)s=8(8/s)s=8 pairs. Dividing the total by eight counts the orbits.

In our puzzle, the identity fixes all 408 boards. Both 0000\mathtt{0000} and 1111\mathtt{1111} are unchanged by every permutation of the compass directions. A symmetric board must therefore place both labels in cells fixed by the spatial symmetry. On an even 4×44\times4 grid, a nontrivial rotation or a horizontal or vertical reflection has no fixed cell, so none can fix an accepted board.

A diagonal reflection does have four fixed cells, so it needs a final finite check. Each diagonal fixes two locally valid boards, but their component sizes are 9, 3, 3, and 1. None satisfies our connectivity rule.

Symmetry typeHow manyConnected boards fixedComment
Identity1408Every board
Quarter-turns20 each9090^\circ and 270270^\circ
Half-turn10180180^\circ
Axis reflections20 eachHorizontal and vertical
Diagonal reflections20 eachFixed candidates are disconnected

Appendix

Catalogue of the 51 kolams

The catalogue below contains one canonical representative from every square-symmetry class in the enumeration.

Contact sheet preview showing the first page of the catalogue of 51 square kolams
A preview of the catalogue. Each panel stands for one D4D_4-orbit, so its seven rotated or reflected copies are omitted. Open the full two-page PDF.
What does the enumeration do?
build the 1,448 legal four-tile rows
index rows by their north and south signatures
join compatible rows with disjoint tile masks
keep the 652 exact-inventory boards
test reachability from the 1111 tile
keep the 408 accepted boards
replace each D₄ orbit by its least representative
verify: 51 orbits × 8 boards = 408

Notes and further reading

  1. For the threshold setting, materials, transmission, and cultural meanings of kōlam, see Sahapedia’s “Significance of Kolam in Tamil Culture” and the Indira Gandhi National Centre for the Arts archive note.
  2. For mathematical approaches, see Marcia Ascher’s “The Kolam Tradition”; Gift Siromoney, Rani Siromoney, and Kamala Krithivasan’s “Array Grammars and Kolam”; and Venkatraman Gopalan’s square-tile sikku kōlam enumeration.
  3. The exact-inventory puzzle is closely related to edge-matching or Wang-tile problems: local colour matching is replaced here by equality of 0–1 side data.
  4. Burnside’s lemma is sometimes called the orbit-counting lemma. Its power is that it remains correct even when different objects have orbits of different sizes.

Continue

The exhaustive enumeration certifies the count; the completed kolams remind us why the objects were worth counting.

Reading preferences

Display settings

Choose a comfortable text size and page theme. Preferences are stored only on this device.

Text size
Theme

Medium text · Light theme

On this device