<?xml version="1.0" encoding="UTF-8"?>
<rss  xmlns:atom="http://www.w3.org/2005/Atom" 
      xmlns:media="http://search.yahoo.com/mrss/" 
      xmlns:content="http://purl.org/rss/1.0/modules/content/" 
      xmlns:dc="http://purl.org/dc/elements/1.1/" 
      version="2.0">
<channel>
<title>Math Nomad</title>
<link>https://mathnomad.in/read/</link>
<atom:link href="https://mathnomad.in/read/index.xml" rel="self" type="application/rss+xml"/>
<description>Journeys through mathematics, exploration and teaching.</description>
<generator>quarto-1.9.38</generator>
<lastBuildDate>Wed, 15 Jul 2026 00:00:00 GMT</lastBuildDate>
<item>
  <title>How four bits become a kolam</title>
  <dc:creator>Mohan Rajendran</dc:creator>
  <link>https://mathnomad.in/read/articles/binary-kolam-tiles/</link>
  <description><![CDATA[ 




<p>Take a square, mark its centre and the midpoint of each side, and choose which of the four midpoints should be connected to the centre. There are (2^4=16) choices. A four-bit word records one choice completely.</p>
<p>We shall read the bits in the order</p>
<p>[ E;N;W;S. ]</p>
<p>Thus (1010) has an opening to the east and west, while (0111) has openings to the north, west and south.</p>
<section id="from-bits-to-a-drawing" class="level2">
<h2 class="anchored" data-anchor-id="from-bits-to-a-drawing">From bits to a drawing</h2>
<p>The straight segments are the combinatorial skeleton. In the kolam rendering, the same edge data is drawn as a smooth white strand on a coloured square. The visual style changes; the information does not.</p>
<p>Write the tile in column (x), row (y) as</p>
<p>[ t_{x,y}=(e_{x,y},n_{x,y},w_{x,y},s_{x,y}). ]</p>
<p>Two horizontally adjacent tiles match precisely when</p>
<p>[ e_{x,y}=w_{x+1,y}, ]</p>
<p>and two vertically adjacent tiles match when</p>
<p>[ n_{x,y}=s_{x,y+1}. ]</p>
<p>These are <em>local</em> equations: each one looks at only a single shared edge.</p>
</section>
<section id="closing-the-boundary" class="level2">
<h2 class="anchored" data-anchor-id="closing-the-boundary">Closing the boundary</h2>
<p>For a (4) board, no strand should leave the outer square. With rows numbered upwards, this says</p>
[
<math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mtable><mtr><mtd columnalign="right" style="text-align: right; padding-right: 0"><msub><mi>w</mi><mrow><mn>1</mn><mo>,</mo><mi>y</mi></mrow></msub></mtd><mtd columnalign="left" style="text-align: left; padding-left: 0"><mo>=</mo><mn>0</mn><mo>,</mo></mtd><mtd columnalign="right" style="text-align: right; padding-right: 0"><msub><mi>e</mi><mrow><mn>4</mn><mo>,</mo><mi>y</mi></mrow></msub></mtd><mtd columnalign="left" style="text-align: left; padding-left: 0"><mo>=</mo><mn>0</mn><mo>,</mo></mtd></mtr><mtr><mtd columnalign="right" style="text-align: right; padding-right: 0"><msub><mi>s</mi><mrow><mi>x</mi><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd columnalign="left" style="text-align: left; padding-left: 0"><mo>=</mo><mn>0</mn><mo>,</mo></mtd><mtd columnalign="right" style="text-align: right; padding-right: 0"><msub><mi>n</mi><mrow><mi>x</mi><mo>,</mo><mn>4</mn></mrow></msub></mtd><mtd columnalign="left" style="text-align: left; padding-left: 0"><mo>=</mo><mn>0</mn><mi>.</mi></mtd></mtr></mtable><annotation encoding="application/x-tex">\begin{aligned}
w_{1,y}&amp;=0, &amp; e_{4,y}&amp;=0,\\
s_{x,1}&amp;=0, &amp; n_{x,4}&amp;=0.
\end{aligned}</annotation></semantics></math>
<p>]</p>
<p>The matching and boundary equations guarantee that the small pieces join without loose ends. They do <strong>not</strong> guarantee a single kolam: the board may contain several disjoint loops.</p>
</section>
<section id="the-global-condition" class="level2">
<h2 class="anchored" data-anchor-id="the-global-condition">The global condition</h2>
<p>Make a graph whose vertices are tile centres and shared active edges. The complete drawing is connected exactly when this graph has one non-trivial connected component.</p>
<p>This distinction is useful:</p>
<ul>
<li>boundary closure is local to the outside edge;</li>
<li>edge matching is local to neighbouring squares;</li>
<li>connectedness is global and may depend on the entire board.</li>
</ul>
<p>An arrangement can satisfy every local equation and still fail the global test.</p>
</section>
<section id="why-turn-it-into-a-15-puzzle" class="level2">
<h2 class="anchored" data-anchor-id="why-turn-it-into-a-15-puzzle">Why turn it into a 15-puzzle?</h2>
<p>Set aside the (0000) tile, regard its position as the empty square, and allow only the usual slide into that square. During a slide sequence, intermediate boards need not satisfy the kolam conditions. We can then ask a different question:</p>
<blockquote class="blockquote">
<p>Which valid kolam configurations can be reached from which others by legal 15-puzzle moves?</p>
</blockquote>
<p>This introduces a classical parity invariant, but now the target arrangements come from a highly structured family. The interactive laboratory lets you investigate the construction problem and the sliding problem separately before putting them together.</p>
<div class="callout callout-style-default callout-note callout-titled" title="Continue in the laboratory">
<div class="callout-header d-flex align-content-center">
<div class="callout-icon-container">
<i class="callout-icon"></i>
</div>
<div class="callout-title-container flex-fill">
<span class="screen-reader-only">Note</span>Continue in the laboratory
</div>
</div>
<div class="callout-body-container callout-body">
<p><a href="https://kolam-tile-builder.littleboy300.chatgpt.site">Open the Kolam Tile Laboratory</a> to build a configuration, inspect violated conditions and try the orbit challenge.</p>
</div>
</div>


</section>

<a onclick="window.scrollTo(0, 0); return false;" id="quarto-back-to-top"><i class="bi bi-arrow-up"></i> Back to top</a> ]]></description>
  <category>kolams</category>
  <category>combinatorics</category>
  <category>graphs</category>
  <guid>https://mathnomad.in/read/articles/binary-kolam-tiles/</guid>
  <pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate>
  <media:content url="https://mathnomad.in/assets/kolam-field.svg" medium="image" type="image/svg+xml"/>
</item>
</channel>
</rss>
