# How can I prove this operation on domino tilings is associative?

Suppose we have two tilings of a region by dominoes $T$ and $U$. If a domino in $T$ does not correspond to a domino in $U$ (that is, two cells covered by some domino in $T$ is covered by two dominoes in $U$), we can form a cycle of cells as follows: Let $C_1$ and $C_2$ be the two cells of the domino. Then take the domino in $U$ that covers $C_2$, and let the other cell in the same domino be $C_3$. Now take the domino that covers this cell in $T$, and let it be $C_4$. Continue this process until you get back to $C_1$.

We can give this cycle an orientation. If we fixed a checkerboard coloring, and draw arrows in dominoes from black to white cells, the cycle is given an orientation. Clearly, the two tilings of the cycle in $T$ and $U$ will have different orientations. Let's say anticlockwise tilings of cycles are `bigger'.

Then define the operation $\vee$ as follows:

$T \vee U$ is a tiling with dominoes placed such that all cycles induced as explained above is tiled with the bigger tiling. (So to construct this tiling, first pick all dominoes that are shared in $T$ and $U$. Now pick a domino from $T$ that is not also in $U$, and construct a cycle. For these cells, chose the tiling that has a anticlockwise orientation. Continue in this way until all cells have been covered.)

What I want to do is prove that this operation is associative, that is, given three tilings $T$, $U$ and $V$ of a region, prove that

$(T \vee U) \vee V = T \vee (U \vee V).$

Failed attempt. So far, I have not been able to make a lot of progress with this. I tried to reason along these lines: If $D$ is a domino in $(T \vee U) \vee V$, then it must be a domino in one (or more) of $T$, $U$, and $V$. Suppose (working towards a contradiction) $D \notin T \vee (U \vee V)$. Then it cannot lie $U \vee V$ (otherwise it will also be in $T \vee (U \vee V)$), and so there is a cycle that contains $D$ induced by $T$ and $U \vee V$, with tiling $C_T$ in $T$ and $C_{UV}$ in $U \vee V$, and moreover, $C_T < C_{UV}$, otherwise it would be in $T \vee (U \vee V)$. ... Etc. I cannot figure out how to make this work though.

Background. I'm working towards proving that this operation, with its dual $\wedge$ (that takes the "smaller" cycles instead) make tilings into a distributive lattice. Commutative and absorption is easy to prove, but associativity and distributivity not. I hope that the trick used to prove associativity will help with the distributivity too.

This distributive lattice property of tilings is usually proven with height functions. This question is in the same spirit as this one: Elementary proof of transformations of domino tilings.

Update: Using the type of reasoning in the failed attempt above, I managed to prove the following (without assuming the operations are associative or distributive over each other):

If all of these hold for three tilings of a region $T$, $U$ and $V$:

• $T \neq U$
• $T \neq V$
• $T \vee U = T \vee V$
• $T \wedge U = T \wedge V$

then $U = V$. (This is usually proven with all the properties of a distributive lattice in place.) Maybe with suitable choices we can prove associativity from this?

Here is a counterexample.

$$T=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$ $$U=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$ $$V=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$ $$T\vee U=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$ $$(T\vee U)\vee V=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$ $$U\vee V=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$ $$T\vee(U\vee V)=\begin{array}{l} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid #aaa;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid #aaa]{} \\[-3mm] \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid #eee]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid #aaa;border-bottom:4px solid #aaa]{} \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid black;border-right:4px solid black;border-bottom:4px solid #eee]{} \\[-3mm] \bbox[10px,#eee,border-left:4px solid black;border-top:4px solid #eee;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid black;border-right:4px solid #aaa;border-bottom:4px solid black]{} \bbox[10px,#eee,border-left:4px solid #eee;border-top:4px solid black;border-right:4px solid #eee;border-bottom:4px solid black]{} \bbox[10px,#aaa,border-left:4px solid black;border-top:4px solid #aaa;border-right:4px solid black;border-bottom:4px solid black]{} \\[-3mm] \end{array}$$

• Wow I am totally surprised by this; I really thought it was true! (This means something is seriously wring with how I understand these tilings...) How did you find it? – Herman Tulleken Jun 7 '18 at 17:56
• @HermanTulleken found by brute force with a computer :) – stewbasic Jun 7 '18 at 22:01
• I wrote my own program to investigate this further. For "small" shapes, non-associative triplets are rare. The $4\times 4$ square is the smallest rectangle that has some, but of all 46656 triplets only 192 don't associate. All of these triplets contain either $U$ or $V$ in this answer. For the $5\times 4$ rectangle, 5556 of the 857375 triplets don't associate, and although I did not identify a clear rule, they seem to contain $U$ and $V$ as subtilings, or close variants. – Herman Tulleken Jul 1 '18 at 23:48

This is meant to supplement the accepted answer.

It turns out the definitions I gave for $$\wedge$$ and $$\vee$$ can be associative with a small modification: we simply disregard any induced cycles that lie within any other. (It is clear that they cannot overlap, but some cycles can lie within others. If we only use the outer cycles for the definition, then the operations coincide with the meet and join operation defined using flips only for simply connected figures, but extend to figures with holes which may not have tilings that are connected through flips.)

The basic ideas of this are in these two papers:

This also explains the observations of my computational experiments. In small a $$4 \times 4$$ square, there are only two possible pairs of cycles so that one can lie within the other, and there are only four tilings that can be made from the two orientation of these two strips. Therefor, any triplet must contain at least $$U$$ or $$V$$. (The other two tilings happen to be the min and max tilings). For the $$5 \times 4$$ square, there are only a few more possibilities, but a large amount of them involve the two cycles of $$4 \times 4$$ square, and the rest look very similar.