ENUMERATION OF POLYOMINOES INSCRIBED IN A RECTANGLE
Shared by: ert634
-
Stats
- views:
- 10
- posted:
- 5/29/2011
- language:
- French
- pages:
- 12
Document Sample


ENUMERATION OF POLYOMINOES
INSCRIBED IN A RECTANGLE
Alain Goupil, Hugo Cloutier, Fathallah Nouboud
Université du Québec à Trois-Rivières
Polyomino inscribed Polyomino with Polyomino with
in a rectangle minimal area minimal +1 area
Problem. Enumerate polyominoes inscribed in a rectangle !
1
Enumeration of polyominoes with minimal area
area=b+k-1
they are disposed along a diagonal of the rectangle
First decomposition.
minimal = hook × stair × hook
Building blocs :
hook(b,k)=1 (the corner cell is fixed)
xy
⇒ Hook(x,y)=1 + $ x b yk = 1 +
(1 " x )(1 " y)
b,k#1
#b + k " 2 &
stair(b,k) = % (
$ b -1 '
! #b + k " 2 & b k xy
⇒ Stair(x,y)= * % ( x y =
$ b -1 ' (1 " x " y)
b,k)1
!
Polyominoes on one diagonal :
# xy &2 xy
⇒ Pmin,\(x,y)= %1 +
! (
$ (1 " x )(1 " y) ' (1 " x " y)
2
!
Polyominoes on two diagonals: Crosses
cross = hook × (hook – corner cell)
except for polyominoes on one row or one column
xy xy 2 x2y
⇒ Cross(x,y)= " "
2 2 2
(1 " x ) (1 " y) (1 " y) (1 " x ) 2
Inclusion-exclusion.
!
Pmin(x,y)= Pmin,\(x,y)+Pmin,/(x,y)-cross(x,y)
⇒ Pmin(x,y)= # pmin ( b,k )x b yk
b,k "1
# xy &2 2xy
#
xy xy 2 x 2y (
&
%1 + ( "% " "
$ (1 " x )(1 " y ) ' (1 " x " y ) % (1 " x ) 2 (1 " y ) 2 (1 " y ) 2 (1 " x ) 2 (
! $ '
!
3
Exact formulas :
#b + k " 2 &
Pmin(b,k)= 8 % ( " bk " 2( b "1)( k "1) " 6
$ b -1 '
if n = number of cells
then Pmin(n) = number of polyominoes with n cells
! inscribed in any rectangle of perimeter 2n+2
n
= # pmin ( b,n " b +1)
b =1
1# 3 &
= 2n+2 " %n " n 2 +10n + 4 (
2$ '
!
n z 2 (1 " 4z + 8z 2 " 6 z 3 + 4z 4 )
Pmin(z)=
! # pmin ( n )z =
b,k "1 (1 " z ) 4 (1 " 2z )
! !
4
Second decomposition :
minimal = hook × corner polyomino
Corner polyominoes : inscribed polyominoes with min area
and one cell in a given corner of the rectangle.
#1 if b = 1 or k = 1
pc(b,k)= $
% pc ( b "1,k ) + pc ( b,k "1) +1 otherwise
#b + k " 2 &
= 2% ( "1 for b,k ) 1
$ b -1 '
!
!
5
Polyominoes with min+1 area
Benches :
P is an inscribed polyomino of area min+1
⇔
P contains exactly one bench
To construct all min+1 polyominoes that contain a given
bench B:
1- Fix the position of the bench B in a b × k rectangle R.
2- Complete the bench into a polyomino with area min+1
in two opposite regions; f1--f2 or f3--f4.
3- Use inclusion-exclusion and remove polyominoes that
belong to both diagonals (i.e. hooks).
Pmin+1(B) = f1 f2 + f3 f4 -8t
To obtain all inscribed min+1 polyominoes :
4- sum over all benches B in the rectangle R.
6
Case 1. The bench B is in a corner.
P1(t,b,k) = Corner polyomino + Hook,
#b + k " t " 2 &
= 2% ( + 2( t "1)
$ b-2 '
!
P2(t,b,k) = Corner polyomino + Hook,
#b + k " t " 2 &
= 2% ( + 2
$ b-2 '
Proposition. The number g1(b,k) of polyominoes of area
min+1 inscribed in a bxk rectangle with a bench in any
corner of!the rectangle is
$ k "1 ' $ k "1 '
g1( b,k ) = &4 # p1( t ,b,k ) + 4 ) + &4 # p2 ( t ,b,k ) + 2k )
& ) & )
% t=3 ( % t=3 (
$ b "1 ' $ b "1 '
+ &4 # p1( t ,b,k ) + 4 ) + &4 # p2 ( t ,b,k ) + 2b )
& ) & )
% t=3 ( % t=3 (
*$b + k - 4 ' $b + k - 4 '-
= 16 ,& )+& )/ + 2k( 2k "1) + 2b( 2b "1) "72
+% b - 1 ( % k - 1 (.
7
Case 2. The bench is on one side of the rectangle and not
in a corner.
Proposition. The number g2(b,k) of polyominoes of area
min+1 inscribed in a b×k rectangle with a bench touching
exactly one side of the rectangle is
("b + k - 4 % "b + k - 4 %+
g2 ( b,k ) = 32*$ '+$ '- +
)# b & # k &,
( "b + k - 4 % "b + k - 4 % "b + k - 4 %+
8*10 $ '+$ '+$ '- +
) # b - 2 & # b - 1 & # k - 1 &,
4 3 164
( b + k 3 ) . 28( b2 + k 2 ) . 48bk + (b + k)
3 3
+ 4( bk 2 + b2k ) +144
!
8
Case 3. The bench touches no side of the rectangle.
Proposition. The number g3(b,k) of polyominoes of area
min+1 inscribed in a b×k rectangle with a bench
touching no side of the rectangle is
8 )#b + k - 4 & #b + k - 4 &,
g3 ( b,k ) =
3
[ "12+%
*$ b
(+%
' $ k
(. +
'-
)#b + k - 4 & #b + k - 4 &, #b + k - 4 &
6( b + k " 6 )+% ( +% (. " 60 % (
*$ b - 1 ' $ k - 1 '- $ b- 2 '
#b + k - 2 & 3 3 2 2
+18% ( " ( b + k ) +15( b + k )
$ b-1 '
,
" 6( bk 2 + b2k ) " 48bk " 56( b + k ) + 24.
-
Case 4. 2×2 benches.
!
Proposition. The number p2"2 ( b,k ) of polyominoes of
area min+1 inscribed in a bxk rectangle with a bench
touching no side of the rectangle is
0 !
2
24(b + k - 4) if b = 2,k " 3 or k = 2,b " 3
2 *# -
2 b + k - 4& #b + k - 4 & #b + k - 4 &
18,% ( + 2% ( + 2% ( ) 3 / if b = 3 or k = 3
2 +$ b - 2 ' $ b-1 ' $ k-1 ' .
2 *## & & -
28,%%b + k - 4 ( +1(( b + k ) 2 ) ) bk / if b,k " 4
2 ,$$ b - 2 ' '
3 + /
.
! 9
All cases.
Theorem. For b,k≥3, the number pmin+1(b,k) of
polyominoes of area min+1 inscribed in a b×k rectangle is
pmin+1(b,k)= g1(b,k)+ g2(b,k)+ g3(b,k)+ p2"2 ( b,k )
#b + k " 4 & 8( 2k 2 + 2kb + k "13k +13 ) #b + k " 4 &
= 8( b + k " 22 ) % (+ ! % (
$ b- 2 ' (k " 2) $ b-1 '
8( 2b2 + 2kb + b "13b +13 ) #b + k " 4 & #b + k " 2 & 4 3 3
+ % ( + 48% ( " (b +k )
(b " 2) $ k-1 ' $ b-1 ' 3
266
"12( b2k + bk 2 ) +16( b2 + k 2 ) +72bk " ( b + k ) +120
3
Corollary. For integers n≥4, the number pmin+1(n) of
polyominoes of area n inscribed in any rectangle of
!
perimeter 2n is given by
n"2
pmin+1( n ) = # pmin+1( b,n " b)
b =2
22 ' 1 $ 4
n $4 '
=2 & + n ) " &8n " 88n 3 + 430n 2 " 902n + 636 )
%5 5 ( 3 % (
!
10
Polyominoes with no loop (lattice trees)
and min+1 area.
Corollary. The number l min+1( b,k ) of lattice trees
inscribed in a b×k rectangle with area min+1 is
l min+1( b,k ) = f min+1( b,k ) " f 2#2 ( b,k )
!
Corollary. For integers n ≥ 5, the number l min+1( n ) of
!
lattice trees of area n inscribed in any rectangle of
perimeter 2n is given by
n"2 !
l min+1( n ) = # l min+1( b,n " b)
b =2
2$ 4 '
= 2 n+1 n "1 "
( ) &4n " 46n 3 + 227 n 2 " 473n + 318 )
3% (
!
11
Next …
More recurrences, exact formulae, generating
functions
Minimal 3D polyominoes
12
Get documents about "