MathB.in
New
Demo
Tutorial
About
What's our data? $ A_{m,n} $ pieces and they have 3^4 possible shapes. We will assign them randomly at the beginning, satisfying boundary conditions. Let $A_{m,n,s}$ represent original "pokiness" in each direction. $0 =|$, $-1 = \langle$, and $+1= \rangle$. Let m represents row,n represents column as a helpful reminder to TOP/BOT, LEFT/RIGHT relations. Which satisfies formula \begin{align*} A_{0, n, \text{TOP}} = 0 \\ A_{k, N-1, \text{RIGHT}} = 0 \\ A_{k, 0, \text{LEFT}} = 0 \\ A_{M-1,0, \text{BOT}} = 0 \\ A_{m, n, \text{BOT}} + A_{m + 1, n, \text{TOP}} = 0 \\ A_{m, n, \text{RIGHT}} + A_{m, n + 1, \text{LEFT}} = 0 \end{align*} Define $\text{TOP}=0$, $\text{RIGHT}=1$, $\text{BOT}=2$, $\text{LEFT}=3$ all $(\text{mod} 4)$, and $\oplus$ to indicate sum modulo 4. Once scrambled, we have $ B_{k} $ pieces $K= M\times N $ each with $3^4$ possible shapes. Let their post rotation pokiness be also be handled through $B_{k,s}$ notation. We will assume pieces don't get flipped, or easy to figure out which side is up. We have to determine mapping $ k \rightarrow (m, n) $ and the orientation $ k \rightarrow s $ . So one natural way to do is one hot encode $X_{k, m, n}$ and $Y_{k, s}$ : \begin{align*} \sum_{m,n} X_{k,m,n} = 1 \\ \sum_{s} Y_{k,s} = 1 \\ \end{align*} With jigsaw constraints (All 6 above have analogues). The binary ones are more complex which would look like: \begin{align*} X_{k,m,n} \land Y_{k, s} \land X_{l,m+1,n} \land Y_{l, t} \implies (B_{k,BOT \oplus s} + B_{l,TOP \oplus t} == 0) \end{align*} Since rhs is constant, this would simply reduce to a constraint only when it is false. Meaning if rhs is false, then lhs must be false, otherise lhs can be anything.
ERROR: JavaScript must be enabled to render input!
Tue, 19 Dec 2023 05:02 GMT