411 REFERENCE · Wikibooks
Geometry/Polyominoes
Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.
A polyomino is a plane geometric figure formed by joining one or more equal squares edge to edge.
Domino
thumb|right|120px|A Domino
A domino is the shape made from attaching unit squares so that they share one full edge. The term polyomino is based on the word domino.
There is only one possible domino.
Tromino
A polymino made from three squares is called a tromino. There are only two possible trominoes.
200px 120px
Tetromino
A polymino made from four squares is called a tetromino. There are five possible combinations and two reflections:
Image:Tetrominoes IJLO STZ Worlds.svg
Pentominoes
A polymino made from five squares is called a pentomino. There are twelve possible pentominoes, excluding mirror images and rotations.
Further Classification
Polyominoes can also be classified by dividing one into 2 parts by lines that go through the centroid of the polyomino and evaluating the angle between the orthogonal of such a line that goes through that centroid and a line also going through it and going through the centroid of such a part. Any set of points can be classified by such Half Centroid Deviation Angles HCDA, e.g. a circle is characterized by always having HCDA = 0°.
This is how the centroids S1, S2 and S3 of each of the 3 squares of a non-linear (i.e. a not line-shaped) tromino and its whole-polyomino centroid C are arranged:S1 S2
C
S3If we want to classify the whole polyomino all HCDA that appear here should be factored in. Starting with the Dividing Line DL that (goes through C and) firstly also goes through S1 and turning clockwise then a phase with a Half Centroid HC only consisting of S2 appears. This phase starts with HCDA = arctan ½ – arctan 1 = – arctan ⅓ and ends with HCDA = 2 arctan ½ = arctan (4/3) when the DL meets S3. Signs depend on where the orthogonal is placed relative to the HC. In the next phase the HC is formed by S2 and S3 ... So the "Σ tan HCDA", the sum of all "tan (end HCDA) – tan (start HCDA)" of all such phases from 0 till 2 pi (0° till 360°) of a polyomino is a rational number about the degree of deviation from a circular shape. In case of this tromino there are 6 phases:
(DL goes through) S1 → S3, HC: S2, partial Σ tan HCDA = 4/3 + 1/3 = 5/3
S3 → S2, HC from S2 and S3, part. Σ tan HCDA = 2/3
S2 → S1, HC: S3, part. Σ tan HCDA = 5/3
S1 → S3, HC from S1 and S3, part. Σ tan HCDA = 4/3 + 1/3 = 5/3
S3 → S2, HC: S1, part. Σ tan HCDA = 2/3
S2 → S1, HC from S1 and S2, part. Σ tan HCDA = 5/3
The sum of all these partial Σ tan HCDA = 8.
In the following table of those values of non-linear polyominoes (in a straight line polyomino tan 90° = ∞ is reached between orthogonal and HC), a polyomino is described in a linearized form which assumes the first 2 squares and specifies linearly further squares by "1" each if this place is not previously changed by "o" in a spiral course (comparable with that of Ulam spiral) to another possible place next to an already placed square not already excluded by a previous "o".
Diagonal symmetry: \, /
to specification line horizontal symmetry: —, vertical: |, horizontal and vertical: +
rotational symmertry: •, if rotation also by 90° yields the same: ••
In the next columns the continued fraction expansions of Σ tan HCDA and of tan (greatest absolute deviation angle) are given, with continued fraction terms not separated by commas but by number of decimal digits – 1 apostrophes prepended to the terms:
1 non-linear tromino:
o1 \ 8 13
4 non-linear tetrominoes:
1oo1 | 712 (= 7 ⅔) 16 (= 7/6)o1oo1 + 8 11o1 '10 2o11 • '12 3
11 non-linear pentominoes:
1o1oo1 727 11oo11 | 7141112 151oo1oooo1 + 8 11o1ooo1 | 861132 121'11o11oo1 84212 11121o1o1 \ 8114 1117o11o1 \ 91'11 2 111711oo1 '10 12 2o1o11 • '12 31o11 '12 2'12 21411o1 '13 '15 233
thumb|This (less comprehensible) ordering of the 35 free hexominoes in reading direction line by line yields a numbering also found in the table's *-column.
34 non-linear hexominoes:
Linearized form Σ tan HCDA tan (greatest deviation ∢)*o11oo1o1 — 61221122 0111112 301o1oo11 6132118 012112 2411oo11 6171'13 18 0121132 11o11oo1oo1 / 61'21 152 012 331o1o1oo1 7418211122 015212 281oo111 72174122 1'15 29o111oooo1 7113121153'56 142 231o1oo1o1 + 712 16 2211oo1o1 | 715 01'23 091o1o1ooo1 \ 8 13 32o11o1oo1 83'16 6 1224 341o11oo1 81111174 112 18o111oo1 99122614 111'19 2511o1o1 954 112 10o111ooo1 92214 1242 1911o1ooo1 924 2 0711o1oo1 91134 113 0611oo1ooooo1 — 9192 2 171o11ooo1 • '10 2 211o1o11 '10 52321114 26 26o1o1o1oo1 — '10 3126 11226 0811oo1oooo1 • '10 2 22 16o11oo11 '10 1152 22 131oo11o1 | '10 12 2 121o11o1 '11 4111'24 23 22113 27o1o11oo1 '11 111112 3 14o111o1 '12 1152312 26 31o11o11 • '13 215 35111ooooo1 | '14 24 21'11 04o1o1o11 • '14 2 32 1511o11 '14 1332 39 05111oo1 '15 326 2162 031o111 • '17 42 20111o1 '17 141112 3313 02
Heptominoes (There are 107 distinct non-linear free ones):
1o1oo11oo1 | 61118'12 01131o11ooooo11 — 615221'18 2 01221oo111ooo1 + 73 1111ooooo11 72514 01'2011o1oo1ooooo1 71251'10 512112 154o11o1oo1oo1 + 8 111o1o1o1 \ 851'28 111142 16'15111oo11 831534 1'11 12 111oo1o1 9181'13 14 1113 111oo1oo1 | '10 211613 111115 1o1o111 • '12 3o11o11o1 \ '13 '35 245o1o1o1o1oo1 '13 '33 13 211331131oo11oooooo1o1 + '13 3 3111oo1oooo1 '13 183 3113111oo1ooooo1 '14 73122 37111oo1ooo1 • '14 12 4o111o11 • '16 3o1o1o1o11 • '18 12 51111ooooo1 '19 151132 442121111oo1 '20 1''104 43521111o1 '23 3111113 432
...
Octominoes (There are 52 distinct non-linear symmetric free ones):
1o1o1oo1o1oo1 + 612 021o11ooo11oooooo1 •• 7 013o11oo1o1oo11 + 73 11o1o11ooo1ooo1 • 7144 1321o11oo1oo1ooo1 / 7151132 13211o1oo1o1o1 + 812 131oo11o11ooo1 + 95 211o11ooo1o1 • '10 3 2o1o1oo1111 • '11 '28 1113 291o11o111 • '15 1121123 3122o11o11o11 • '15 12 3o1111o11 • '18 31211o1111 • '23 12 63
...
Nonominoes:
11oo1111ooooo1 • 712 131o11o11ooo1oo1 • '10 11311o1o1111 • '14 3 3121o111o111 • '20 42o11111o11 • '21 42
...
10-ominoes:
11oo111ooo1o1ooo1 + 612112 0211o1o1oo1o1o1oo1 + 61311154 011121211o1oo11oo11oooo1 • 61'19 1112 0131oo11o1o1o11ooo1 + '15 92 221o11o11o111 • '18 ''126 41711o11o1111 • '18 1392 41118o111o111o11 • '21 1'59 441o1111o111 • '23 8113 4242o111111o11 • '23 1'10 54111o11111 • '30 162 84
...
11-ominoes:
111ooooo1111oooo1o1 • 61'20 0122111o1o11111 • '17 2113112 4211o111o1111 • '23 16 51221o11111o111 • '26 12 5o1111111o11 • '27 23 62
...
12-ominoes:
o11o1oo11o1oo11o11 + 62'10 0311o1o1o1oo1o1o1oo1oo1 + 62'10 0311oo11o1ooo11o1ooo1oo1 •• 612 021o11oo1o11oo1o1o1ooo1 + 614 011211o1o1oo1o1o1oo111 + 6 1'11 0125o111oo111oooo111ooooo1 •• 61'12 42 01221o111o111o111 • '25 4 41'1511o1111o1111 • '27 1'11 68
...
So the sequence of the number of continued fraction terms of Σ tan HCDA of the non-linear polyominoes sorted that way firstly by the number of their squares and then by their Σ tan HCDA starts with 1, 3,1,1,1, 3,7,1,6,5,4,4,3,1,3,2, 8,7,7,6,10,8,11,3,3,1,4,8,8,3,5,3,5,4,1,9,5,2,5,3,8,7,8,1,3,2,5,4,1,7, ... Every 1 in this sequence means Σ tan HCDA of the certain polyomino is a natural number, which seems to require also some criteria of symmetry or at least similar harmony. The sequence of those naturals is 8, 8,10,12, 8,12, 8,10,13,17, ... The Online Encyclopedia of Integer Sequence currently does not have these 2 sequences, only countings of all possible polyominoes with n cells like that of all free ones, and of all with or without holes or certain symmetries can be found there. So it seems to remain unsolved for now how many polyominoes have natural Σ tan HCDA and which natural numbers can be a polyomino's Σ tan HCDA. Additional editing here for further clarification is welcome.
Here the calculation of a list of the polyomino's square's positions in a complex plane, Σ tan HCDA and absolute value of tan (greatest deviation angle) from a given linearized polyomino specification by using Maxima:t:"(a:[0,1],e:[],b:1/2,c:2,d:1,f:0,g:0,v:0,
for n:1 thru slength(s)do(h:a[c]+d,
if charat(s,n)=ascii(49)then
(a:endcons(h,a),c:c+1,b:b+(a[c]-b)/c,d:1,f:0,g:0,h:a[c]+d)
else e:endcons(h,e),
if(charat(s,n)#ascii(49))or member(h,a)or member(h,e)then do
(if f=bit_rsh(g,1)then(f:0,g:g+1)else f:f+1,
d:d+%i^g,h:a[c]+d,
if(member(h+1,a)or member(h-1,a)or member(h+%i,a)or member(h-%i,a))
and not member(h,a)and not member(h,e)then return(0))),
print(a),e:[],
for n:1 thru c do(a[n]:a[n]-b,e:endcons(carg(a[n]),e)),d:0,f:e[1],
do(b:0,g:0,h:%pi*2,
for n:1 thru c do(if
((e[n]>f)and(e[n]<=(f+%pi)))or
(((e[n]+%pi*2)>f)and((e[n]+%pi)<=f))or
(((e[n]-%pi*2)>f)and((e[n]-%pi*3)<=f))then
(g:g+1,b:b+(a[n]-b)/g,p:e[n]-f,
if p<0 then p:p+%pi*2,
if p>%pi*2 then p:p-%pi*2,
if(p>0)and(p<h)then(h:p,k:n,q:1))else
(p:e[n]-f-%pi,
if p<0 then p:p+%pi*2,
if p>%pi*2 then p:p-%pi*2,
if(p>0)and(p<h)then(h:p,k:n,q:-1))), b:carg(b),
w:cot(f-b), d:d+w, w:abs(w), if v<w then v:w,
w:cot(e[k]-b), d:d-w, w:abs(w), if v<w then v:w,
if q=1 then f:e[k]else(if e[k]>0 then f:e[k]-%pi else f:e[k]+%pi),
if f=e[1] then return(0)),
d:bfloat(d),v:bfloat(v),[d,cf(d),v,cf(v)])"$s:"o11oo1"$eval_string(t)In case of the non-linear tromino "o1" this program obtains its 3 points with centroid at (0; 0):
a[1] = –2/3 – /3
a[2] = 1/3 – /3
a[3] = 1/3 + 2 /3
Then adds these 6 differences together:
cot (arg a[1] + pi/4) – cot (arg a[3] + pi/4) = 1/3 + 1/3
cot (arg a[3] – arctan ½) – cot (arg a[2] – arctan ½) = 4/3 + 1/3
cot (arg a[2] – arctan 2) – cot (arg a[1] – arctan 2) = 1/3 + 4/3
cot (arg a[1] – 3 pi/4) – cot (arg a[3] – 3 pi/4) = 1/3 + 1/3
cot (arg a[3] – arctan ½) – cot (arg a[2] – arctan ½) = 4/3 + 1/3
cot (arg a[2] – arctan 2) – cot (arg a[1] – arctan 2) = 1/3 + 4/3