ASYMPTOTICS OF Z-CONVEX POLYOMINOES

. The degree of convexity of a convex polyomino P is the smallest integer k such that any two cells of P can be joined by a monotone path inside P with at most k changes of direction. In this paper we show that one can compute in polynomial time the number of polyominoes of area n and degree of convexity at most 2 (the so-called Z-convex polyominoes). The integer sequence that we have computed allows us to conjecture the asymptotic number a n of Z-convex polyominoes of area n , a n ∼ C · exp( π √ 11 n/ 4) n 3 / 2 .


Introduction
A polyomino is a geometrical figure consisting of a finite set of connected unitary squares (called cells) in the plane Z × Z, considered up to translations.Polyominoes gained popularity after the paper of S. Golomb [1].Nowadays they are widely studied by physicists, mathematicians, computer scientists and also by biologists.
The problem of counting the number c n of polyominoes with n cells (i.e. of area n) is probably one of the fundamental open problems in combinatorial geometry (see problem (37) in [2]).The problem has been solved up to n ≤ 56 [3] and no closed-form expression for c n is known.Due to the difficulty of the problem, simpler classes of polyominoes have been introduced and widely studied.In particular, the class of convex polyominoes (polyominoes where the intersection with an infinite horizontal or vertical stripe is a finite segment) and some of its subclasses have been thoroughly investigated [4][5][6][7].
For some classes C of polyominoes the generating function ϕ C (x) = n≥0 c n x n is known, either explicitly (by means of a closed-form expression) or implicitly (by means of a non-closed-form expression, or a functional equation satisfied by ϕ C (x)), see for instance [8].This usually allows one to get an estimate of the asymptotic growth of c n (the number of polyominoes of area n in C) using standard analytical methods.
Unfortunately, there are classes of polyominoes for which no information about ϕ C (x) is known.In these cases one can exploit an efficient algorithm for the exhaustive generation of C in order to compute c n for small (but still significant) values of n.For example, Constant Amortized Time (CAT) algorithms for generating several classes of polyominoes have been recently developed, where the exhaustive generation is done by semiperimeter [9,10] or by area [11,12].
In this paper we consider a particular class containing all convex polyominoes P with the property that any two cells of P can be joined by a path in P with at most two changes of direction.This is the class of Z-convex polyominoes introduced in [13] (Z resembles the shape of the path connecting two cells) and studied in [14].Its generating function with respect to the area is still unknown and the only way to enumerate it (up to now) is to use the CAT algorithm presented in [15].We recall that in [13] the generating function of Z-convex polyominoes with respect to the semiperimeter has been computed.
We show how to decompose Z-convex polyominoes in order to obtain a set of formulas that can be used for computing the number of Z-convex polyominoes of area n in polynomial time (under the uniform cost model).We have also developed a C++ program that produces the series of coefficients.This series is analysed in order to obtain a conjecture on the number of Z-convex polyominoes of area n.More precisely, we conjecture that with C = 0.095 ± 0.003.

Notation and preliminaries
Let P be a polyomino with an r × c minimal bounding rectangle.The r rows (resp., c columns) of P are numbered from bottom to top (resp., from left to right).The area of P is the number of its cells, denoted by A(P ).We say that P is null (that is, P = ϵ) if A(P ) = 0.A cell of P is identified by a pair of integers (i, j), where i (resp., j) is the row (resp., column) index.Two cells a = (i, j) and a ′ = (i ′ , j ′ ) are adjacent if |i − i ′ | + |j − j ′ | = 1.Given two cells a and b of P , a path in P from a to b is a sequence q 1 , q 2 , . . ., q k of cells of P , with q 1 = a and q k = b, such that q i and q i+1 are adjacent for all i with 1 ≤ i < k.A step is a sequence of two adjacent cells (i, j), (i ′ , j ′ ).More precisely, a step is called a North step if j ′ = j and i ′ = i + 1; West step if i ′ = i and j ′ = j − 1; South step if i ′ = i − 1 and j ′ = j; East step if j ′ = j + 1 and i ′ = i.
A path in P is uniquely identified by a pair (q, β), where q is the starting cell and β is a string in {N, W, S, E} ⋆ .The number of changes of direction in a path β = β 1 β 2 • • • β r is defined as the number of indices i such that A polyomino P is horizontally convex (resp., vertically convex ) if any row (resp.column) of P consists of exactly one segment.The class of convex polyominoes contains all polyominoes that are horizontally and vertically convex.It has been proved [16], Proposition 1, that a polyomino P is convex if and only if any two cells of P are joined by a monotone path in P .
The degree of convexity of a convex polyomino P , denoted by deg c (P ), is defined as the least integer k such that any two cells of P can be joined by a monotone path with at most k changes of direction.A convex polyomino is called k-convex if its degree of convexity is at most k.When k = 2 we have the class of Z-convex polyominoes, denoted by ZConv and introduced in [13] (Z resembles the shape of a monotone path with two changes of directions).
In the following, we consider a Z-convex polyomino as the result of the concatenation of polyominoes belonging to well-known subclasses of convex polyominoes.Given a convex polyomino P and its bounding rectangle B, we say that P is a stack (resp., Ferrers diagram, parallelogram, rectangle) if it shares exactly two adjacent (resp., three, two opposite, four) vertices with B. A stack P is a left (resp., right) stack if the column with the largest area is the last (resp., first) one.Analogously, in a left (resp., right) Ferrers diagram the largest column is the last (resp., first) one.We denote by L (resp., R) the set of left (resp., right) stacks.The set of left (resp., right) Ferrers diagrams is F L (resp., F R ).Furthermore, we indicate by C (resp., T) the set of parallelograms (resp., rectangles).For a class A of polyominoes, A(n) indicates the set of P ∈ A of area n.Lastly, the height of a polyomino P in L ∪ R ∪ F L ∪ F R ∪ T, denoted by height(P ), is the area of its largest column.
Let j be a column of P , by low(j) (resp., high(j)) we denote the row index of the bottom cell (resp., top cell) of j.Lastly, first(P ) (resp., last(P )) indicates the first (resp., last) column of P .The following definition introduces some binary relations on the set of columns of a convex polyomino.These relations play a special role in the decomposition of a Z-convex polyomino.
Definition 2.1.Let i and j be two columns of a convex polyomino P .We say that i includes j, denoted by j ⊆ i, if and only if low(i) ≤ low(j) and high(i) ≥ high(j), see Figure 2a; i and j are overlapping, denoted by i ⇄ j, if and only if low(j) < low(i) ≤ high(j) < high(i) or low(i) < low(j) ≤ high(i) < high(j), see Figure 2b; i and j are disjoint, denoted by i ≍ j, if and only if low(i) > high(j) or low(j) > high(i), see Figure 2c.We also write j ⊊ i if j ⊆ i and j ̸ = i.Given a convex polyomino P , let e be the rightmost column of P such that c ⊆ e for all columns c to the left of e.Then, P is called descending (resp., ascending) if the leftmost column j of P such that j ⇄ e satisfies low(e) > low(j) (resp., low(e) < low(j)), see Figure 2d (resp., e).The set of descending convex polyominoes is indicated by DConv.If P is neither descending nor ascending (that is, there is not a column j such that j ⇄ e, hence j ⊆ e for all j) then P is in T ∪ F L ∪ F R ∪ L ∪ R or belongs to the class LR containing all convex polyominoes that are the concatenation of two polyominoes, P = P 1 • P 2 , where P 1 ∈ L ∪ F L , P 2 ∈ T ∪ R ∪ F R and first(P 2 ) ⊊ last(P 1 ).Since any P in LR contains a column ȷ such that j ⊆ ȷ for all columns j, one has deg c (P ) ≤ 2. Indeed, for any two cells a ∈ P 1 and b ∈ P 2 there is always a path from a to b with at most two changes of direction occurring on ȷ, see Figure 1.The set of Z-convex polyominoes can be characterized in terms of inclusion between columns.This characterization is the basis of the decompositions that we introduce in the sequel.Theorem 2.2.A convex polyomino P is in ZConv if and only if for any two disjoint columns i and j of P there exist a column k, with 1 ≤ i < k < j ≤ last(P ), such that i ⊊ k and j ⊊ k.
We denote by DConv 2 (resp., AConv 2 ) the set of descending (resp., ascending) polyominoes of degree of convexity 2, see Figure 2d (resp., e).Clearly, one has where the unions are disjoint.Because of symmetry one has |DConv 2 (n)| = |AConv 2 (n)|, hence from here on we consider only descending polyominoes.Thus, for any n ≥ 0 one has and the counting problem for ZConv is reduced to the counting problem for DConv 2 and to some other simpler counting problems (easily solved in polynomial time, see Sect. 5).

Polyominoes decomposition
Computing |DConv 2 (n)| is not immediate.Our approach is based on breaking a polyomino in DConv down into simpler polyominoes.As a matter of fact, a descending convex polyomino is the concatenation of at most four simple polyominoes.We introduce a decomposition that is the first of many steps leading to a set of formulas for computing |DConv(n)|.Definition 3.1.[standard decomposition] Let P ∈ DConv.Then, we can decompose P as The standard decomposition of a polyomino P ∈ DConv is unique.Indeed: last(L) is the rightmost column ȷ of P such that j ⊆ ȷ for all columns j the the left of ȷ; first(C) is the first column e to the right of last(L) such that last(L) ⇄ e; all columns between last(L) and first(C) belong to F ; first(R) is the first column j to the right of first(C) such that low(j) > low(j − 1).
Figure 3 illustrates the standard decomposition of some descending convex polyominoes.Given P ∈ DConv 2 , we point out that by Theorem 2.2, each column c of P to the right of last(L) satisfies the relation c ⇄ last(L) or c ⊆ last(L).
The following Lemma provides a property used to define some subclasses of DConv 2 .These classes appear in the refinements of the standard decomposition that we do to compute |DConv 2 (n)|.Lemma 3.2.Let P ∈ DConv and consider its standard decomposition, P = L • F • C • R.Then, P belongs to DConv 2 if and only if for any two disjoint columns j 1 , j 2 of P (with j 1 < j 2 ) one has j 1 ∈ L ∧ (j 2 ⊆ last(L) ∨ j 2 ⊆ ȷ), where ȷ is the rightmost column of C that includes j 1 .
Proof.(⇒) Let P ∈ DConv 2 and suppose that there exist two disjoint columns j 1 and j 2 with j 1 / ∈ L and j 1 < j 2 .Obviously, j 1 cannot belong to R, since this implies j 2 ⊆ j 1 .If j 1 is a column of F or C, then any column j 2 to its right such that j 1 ≍ j 2 also satisfies j 2 ≍ j ′ for all j ′ < j 1 (since P is descending).In particular, one has j 2 ≍ last(L), which implies deg c (P ) > 2, since no column in P includes both j 2 and last(L).Thus, j 1 must be in L. By Definition 3.1, j 2 can only belong to C or R. If j 2 belongs to C there exists (by Thm.2.2) at least one column j, with j 1 < j < j 2 , that includes both j 1 and j 2 .It is immediate that column j is in C since for all columns c in L or F one has low(c) > low(j 2 ).Thus, we simply consider the rightmost column ȷ with that property.Otherwise, j 2 is in R. If low(j 2 ) < low(last(L)) the column including j 2 must be in C and we apply the above reasoning to get ȷ.Lastly, if low(j 2 ) ≥ low(last(L)) both j 1 and j 2 are included in last(L).
We indicate by LCR 2 (resp., LC 2 , LFCR 2 , LFC 2 ) the subset of DConv 2 containing polyominoes whose standard decomposition is This subset is one of the components we need when we think to a polyomino in DConv as the result of some combinatorial operations applied to polyominoes that are easier to count.
In the sequel, polyominoes with disjoint columns will be recursively decomposed into simpler polyominoes.Thus, given a class A of polyominoes we consider the partition A = A • ∪ A • , where A • (resp.,A • ) contains those polyominoes in A that have (resp., do not have) disjoint columns.In particular, there is a subset of Z • 2 which plays a special role in the decomposition of a polyomino in DConv • 2 .
We point out that polyominoes C and R in Definition 3.4 are not necessarily the same C and R that appear in the standard decomposition of P .More precisely, if we consider the standard decomposition 5 shows examples of polyominoes in the above defined sets.

Operations on polyominoes
In this section we introduce two operations used to obtain polyominoes in DConv 2 by appropriately combining polyominoes belonging to classes that are easier to count.
We start by refining the standard decomposition Notice that L cannot contain a column c such that c ≍ first(C), and P cannot contain a column e such that e ≍ last(L).Indeed, in both cases the degree of convexity of P would be at least 3 (by Thm.2.2).Now, let e be the leftmost column of R such that e ⊊ last(D) (remark: P ∈ Z 2 if e = ϵ and c = first(D)).Columns c and e lead to the decomposition might be null).See Figure 6 for an example, where c, e, R 2 are red, D is black, This refinement of the standard decomposition suggests us to define a partial function 7) that is used to write the main equation for counting DConv 2 .This definition is rather technical as it comprises a lot of conditions, used to ensure that the particular concatenation of polyominoes provides a polyomino in DConv 2 .
Notice that ⊕(F, Moreover, ⊕ is immediately extended to sets of polyominoes by setting We point out that all unions in (4.5) are disjoint.Indeed, if both ⊕(F, P, Q) and ⊕(F ′ , P ′ , Q ′ ) are defined, the polyomino ⊕(F, P, Q) is equal to ⊕(F ′ , P ′ , Q ′ ) if and only if F = F ′ , P = P ′ and Q = Q ′ .In the next section we proceed further, and we show how to obtain a formula for computing |DConv 2 (n)|, from (4.5).From (4.5) it is clear that the main subproblem is computing | can be obtained quite easily, see Section 5).To this aim, we introduce a particular refinement (see Fig. 8) of the standard decomposition . Let e be the rightmost column of C such that last(L ′ ) ⊊ e (e exists by Def.3.3).If e = last(C) set c = first(L), otherwise let c be the leftmost column in L ′ such that c is included in e but not in column e + 1. Lastly, consider the leftmost column We stress that if f belongs to C one has low(f ′ ) = low(e) for any column f ′ of C to the right of e. Indeed, if low(f ′ ) < low(e) no column of P includes both f ′ and c, and so deg c (P ) > 2 by Theorem 2.2.So, there exist two right Ferrers diagrams F 1 , F 2 , two parallelograms (or rectangles) C 1 , C 2 , and two right stacks (or Ferrers diagrams) R 1 , R 2 such that where g ⇄ c for any column g in F 2 and low(h) = low(e) for all h in F 2 or in F 1 (in case (4.6)), and where no column of C 2 • R 2 is disjoint from c (in case (4.7)).In particular, in case (4.7) e could be the last column of C and then L 2 and C 2 would be null.Moreover, C 2 = ϵ implies L 2 = ϵ, since one has last(L 2 ) ≍ f and so there must be a column to the right of e that includes both last(L 2 ) and f .Similarly, in case (4.6) one has that L 2 ̸ = ϵ implies F 2 ̸ = ϵ, since last(L 2 ) ≍ f implies the existence of a column including both last(L 2 ) and f .See Figure 8 for an example of the decomposition of a polyomino in Z • 2 .We associate with case (4.6) the two polyominoes 8 (we recall that concatenation is done by keeping the row index of the bottom cell of each column).Similarly, in case (4.7) we consider Figure 9 illustrates case (4.7).Here, P ′′ consists of 8 red columns and 1 black column (joined to form a single polyomino) whereas Q ′′ consists of 12 yellow columns and 1 black column.
The idea we exploit to count 2 by somehow combining two polyominoes that are uniquely determined by the decomposition of P seen above.In other words, we define an operator ∥: Let d = last(D) and d ′ = last(D ′ ), then Figure 10.The first two steps in the decomposition of a polyomino We set P ∥ Q = ⊥ if P and Q do not satisfy all conditions of Definition 4.2.By Definition 4.2 it follows that a polyomino P ∈ Z • 2 is in s-Z • 2 or can be uniquely written as the pseudo-shuffle of finitely many polyominoes, with 10 illustrates the first two steps in the decomposition of a polyomino in DConv • 2 (then, we consider the decomposition P = P ∥ P 2 , and so on, see Figure 11 for the full decomposition of P ).
The pseudo-shuffle is immediately extended to sets of polyominoes by setting From here on we denote by F R (n, h, e) (resp., LR(n, h, e), T(n, h, e), L(n, h, e)) the set of right Ferrers diagrams (resp., polyominoes in LR, rectangles, left stacks) of area n, height h and with e columns of area h.We also consider the set Z 2 (n, h, e) of all P ∈ Z 2 (n) where the polyomino L in the standard decomposition of P , P = L • C • R, can be written as L = L 1 • D where D is a rectangle with e columns of height h such that height(L 1 ) < h.From the previous definitions and (4.5) it follows that Figure 11.The pseudo-shuffle decomposition of the polyomino P in Figure 10.

Computing |ZConv(n)|
We have seen in the previous section that a polyomino P in DConv 2 can be obtained by exploiting the functions ⊕ and ∥, see (4.9), (4.10) and (4.11).Definitions 4.1 and 4.2 state some conditions that are closely related to the decomposition of P .More precisely, these conditions refer to the area and to the (relative) position of some suitable columns of each polyomino used in the decomposition.So, in order to compute |DConv 2 (n)| from (4.9), (4.10) and (4.11) we need to introduce some functions that count (with respect some suitable parameters) the polyominoes that appear in the decomposition.
Let S L (n, h) (resp., S R (n, h)) be the number of polyominoes of height with S L (i, i) = 1 and S L (j, i) = 0 for i > j.Notice that S L (n, h) is also the of number of unimodal sequences of weight n with largest term h.This is the coefficient of [17], Section 2.5.

In the sequel, we indicate by S(n, h) the number of polyominoes of height
We also denote by S L (m, p, q, y) (resp., S R (m, p, q, y)) the number of polyominoes P counted by S L (m, p) (resp., S R (m, p)) with smallest column of area q and |low(first(P )) − low(last(P )) | = y (see Fig. 13).We point out that the number of right Ferrers diagrams of area m, height p and smallest column of area q is S L (m, p, q, 0).This number is easily computed by means of the following equation, with S L (m, p, q, 0) = 0 if p ̸ = q and p + q > m, and S L (m, p, q, 0) = 1 if m = p = q or m = p + q.
Figure 13 suggests us how to compute S L (m, p, q, y) when y > 0. Indeed, if a polyomino P counted by S L (m, p, q, y) has at least three columns one necessarily has m − p − q > 0, and then S L (m, p, q, y) = γ1 i=0 γ2 z=0 S L (m − p, q + i + z, q, i), Otherwise, the polyomino P has at most two columns, which means m − p − q ≤ 0. Thus, we have S L (m, p, q, y) = 1 if m = p + q ∧ y ≤ p − q or p = q = m ∧ y = 0, and S L (m, p, q, y) = 0 if m ̸ = p + q ∧ p ̸ = q or y > p − q.
Lastly, we indicate by S 2 L (m, p, q, y, e) the number of polyominoes in R(m, p, e) ∪ F R (m, p, e) ∪ T(m, p, e) that are counted by S L (m, p, q, y).It is immediate that for e > 0 one has where δ 1 = max(0, r − q − (p − q − y)) and δ 2 = min(y, r − q) (see Fig. 13 and consider the second to last column as the column of area r).The function S 2 R (m, p, q, y, e) is defined similarly.Functions S L and S allow us to easily compute |LR(n)|, one of the values that appear in the formula for |ZConv(n)|, see (2.1).Indeed, since any polyomino P ∈ LR is (uniquely) decomposed as the concatenation Figure 13.The recursive decomposition of a polyomino counted by S L (m, p, q, y). Figure 14.The recursive decomposition of a polyomino counted by C(n, h 1 , h 2 , i).P = P 1 • P 2 of two polyominoes P 1 ∈ L ∪ F L and P 2 ∈ R ∪ F R ∪ T with first(P 2 ) ⊆ last(P 1 ) and height(P 1 ) > height(P 2 ), it follows that for n > 3 one has: In the sequel we need to know the number C(n, h 1 , h 2 , i) of descending parallelograms P of area n with A(first(P )) = h 1 , A(last(P )) = h 2 and low(first(P )) − low(last(P )) = i.From Figure 14 it follows that The functions introduced so far refer to the components that are easier to count.Now we focus on the most difficult part and let Z ) whose standard decomposition P = L • C or P = L • C • R satisfies the following conditions (see Fig. 15): From (4.9) and Definition 4.1 we get the following formula (see Fig. 16 for the meaning of indices of summations): where the sums are taken on all a 1 , a 2 , a 3 , h 1 , h 2 , h 3 , h 4 , h 5 , h 6 , l 1 , l 2 , δ 1 , δ 2 , δ 3 , δ 4 , e such that (we refer to decompositions (4.1)-(4.4) of P ∈ DConv • 2 and to the standard decomposition ), see Fig. 16): 3 ≤ h 1 ≤ n − 6 (for h 1 < 3 there can be no disjoint columns, and at least 6 cells are needed for two disjoint columns and the column including them, see Fig. 12); 1 ≤ e ≤ ⌊(n − 6)/h 1 ⌋; , and the area of any column c in Without loss of generality we suppose e = 1.Indeed, for e > 1 one has , e 2 , e 3 , 1. From (4.11) and Definition 4.2 we immediately obtain a recurrence equation.Indeed (see Fig. 17), Indeed, a polyomino P counted by Z • 2 (α) is either in s-Z • 2 (and then counted by s-Z • 2 (α)) or is the pseudoshuffle of two polyominoes, P = P ′ ∥ P ′′ , with P ′′ ∈ s-Z • 2 and P ′ ∈ Z 2 .Thus, the first three sums in equation (5.2) count the number of (for specific values of the variables used to identify the components L, C and R in the decomposition of P ′′ ), whereas the fourth sum counts the number of ) such that P ′ ∥ P ′′ is defined (and then belongs to Z • 2 (α)).To ensure this, we refer to the decompositions 17), and we take the sums on all nonnegative integers a 1 , a 2 , a 3 , x 1 , x 2 , x 3 , k 2 , k 3 , k 4 , j 1 , j 2 , j 3 , e 1 , e 2 , e 3 such that (remark: the order of nested sums in (5.2) follows the order of the conditions below): The green column and the yellow columns form the polyomino P ′ ∈ Z 2 (counted by Z • 2 (β)), red columns form the polyomino P 1 ∈ L ∪ F L ∪ T (counted by S L (a 1 , h 2 , x 1 , j 1 )), blue columns form the polyomino P 2 ∈ C (counted by C(a 2 , h 3 , x 2 , j 2 )), whereas pink columns form the polyomino We point out that all the previous conditions derive from definitions 3.3, 3.4 and 4.2.Furthermore, Definition 3.4 immediately leads to the following formula for s-Z • 2 (α) (that holds only for Here, we refer to the decomposition given in Definition 3.4, and we take the sums on all nonnegative integers a 1 , a 2 , x 1 , x 2 , x 3 , j 1 , j 2 , j 3 such that (see Fig. 18): Notice that the previous conditions ensure that P 1 counted by S L (a 1 , h 2 , x 1 , j 1 ) (rotated 180 degrees clockwise), P 2 counted by C(a 2 , x 2 , h 3 , j 2 ) (rotated 180 degrees clockwise) and P 3 counted by S R (n − h 1 − a 1 − a 2 , x 3 , h 4 , j 3 ) are such that . So far we have dealt with counting polyominoes with disjoint columns.Now, let's face the problem of computing the number of descending convex polyominoes without disjoint columns.By considering the standard decomposition L • C • F • R (possibly F, R = ϵ) one has: (see Fig. 19): h1,e,a1,i1,h2 where the sums are taken on all nonnegative integers a 1 , a 2 , a 3 , h 1 , h 2 , h 3 , h 4 , h 5 , h 6 , h 7 , h 8 , i 1 , i 2 , i 3 , j, k, e such that: , since C ̸ = ϵ and first(C) ⇄ first(L) (remark: the case a 2 = 0 corresponds to the first addend 1 in (5.4)) ; , that is used in equation (5.2).By Definition 3.3 and Figure 20 it follows that where the sums are taken over all non-negative integers a 1 , a 2 , x 1 , x 2 , x 3 , j 1 , j 2 , j 3 (see Fig. 20) such that (we refer to the standard decomposition of Finally, we exploit the previous formulas to compute the number of Z-convex polyominoes, We point out that the value |ZConv(n)| can be computed in polynomial time.Indeed, by applying dynamic programming one can develop a program that uses O(1) tables of size O(n 8 ) to store all intermediate results for the sets of values defined above.
The previous formulas are the basis of a C++ program under development.The goal is to compute the counting sequence {c n } of Z-convex polyominoes for n ≤ N , where N is an integer that is large enough to obtain the most accurate estimation of the asymptotic form of the coefficients, as has been done for L-convex polyominoes [18].At the moment, we have a β-version of the program (that uses a non-optimized data structure) that produced the coefficients in Table 1.We point out that this integer sequence does not currently appear in  OEIS and is long enough to obtain an estimate of the number of Z-convex polyominoes of area n, as shown in Section 6.

Analysis of series
In [18] it was conjectured, with compelling evidence, that the asymptotics of 1-convex (otherwise called L-convex) polyominoes, enumerated by area is where A(q) is the area generating function.We expect similar behaviour for k-convex polyominoes, enumerated by area.That is to say, if A k (q) is the area generating function of k-convex polyominoes, then where C k is expected to be an algebraic number and α k and β k are expected to be k-dependent rational constants.
The analysis of series with asymptotics of this type is described in detail in [19], and demonstrated in the case of L-convex polyominoes in [18], so we will not repeat the discussion here, but simply apply the methods described there.
We currently have 70 exact terms of the generating function A 2 (q).Using the method of series extension [20] we have obtained a further 155 approximate terms.As we are only considering 2-convex polyominoes in the following analysis, we will drop the subscripts, and write a n = [q n ]A 2 (q) ∼ C n α exp(π √ βn).First, we consider the ratios of successive coefficients, r n = a n /a n−1 .For a power-law singularity, one expects the sequence of ratios to approach the growth constant linearly when plotted against 1/n.In our case the growth constant is 1.That is to say, there is no exponential growth.
For a singularity of the assumed type, which is called a stretched exponential, the ratio of coefficients behaves as so we expect the ratios to approach a limit of 1 linearly when plotted against 1/ √ n, and to display curvature when plotted against 1/n.
We show the ratios plotted against 1/n and 1/ √ n in Figures 21 and 22 respectively.These plots are behaving as expected, with the plot against 1/n displaying considerable curvature, while the plot against 1/ √ n is closer to linear, but still displays some curvature, presumably due to the presence of an O(1/n) term.We can eliminate  this term by considering the linear intercepts, which eliminates that term.These are shown in Figure 23, which plot is seen to be convincingly linear, and going to the expected value of 1.
We can readily obtain further evidence that the power inside the exponential term is indeed a square root.From (6.1), one sees that Accordingly, a plot of log(r n − 1) versus log n should be linear, with gradient −1/2.In Figure 24, we show the log-log plot, and in Figure 25 we show the local gradient plotted against 1/ √ n.The linearity of the first plot is obvious, while the second is convincingly going to a limit of −0.5 as n → ∞.Having convincingly established that the relevant exponent is a square-root, just as for stack polyominoes, it remains to determine the other parameters.There are several ways one might proceed, but here is one that works quite well.
This is of the form Cµ n n g , so we can use the usual ratio method.In particular, In Figure 28, we show the ratios plotted against 1/m, and estimate that exp(πβ) ≈ 183, implying β = 2.7497, in excellent agreement with our previous conjecture β = 11/4.
In Figure 29   We have plotted estimators of 2α against 1/m, and 2α is estimated to be −3, or α = −3/2, exactly the same value as for L-convex polyominoes.
So at this stage we can reasonably conjecture that In order to calculate the constant C, we form the sequence exp(π 11n/4) , and extrapolate the sequence C n using any of a variety of standard methods.In Figure 30  We conclude with the conjecture that the asymptotic form of the coefficients of Z-convex polyominoes is with C = 0.095 ± 0.003.Unfortunately, this estimate is insufficiently precise to conjecture an exact value for the constant C, though C = 11

Conclusion and perspectives
We have shown that the counting problem for Z-convex polyominoes is in P (the class of problem solved in polynomial time under the uniform cost model).The sequence of coefficients provided by the C++ program has been analyzed in order to obtain a conjecture on the asymptotic form of coefficients.We plan to develop an optimized program to produce a longer sequence, with the goal of obtaining a conjecture for the exact value of the constant C in (6.3).
Furthermore, we think that the idea of decomposing a convex polyomino into simpler pieces could be applied also to efficiently enumerate other classes of convex polyominoes.In particular, in [21] the standard decomposition is the basis of a different technique used to count convex polyominoes of degree of convexity at most k, for k > 2.
if and only if D = D ′ and for d = last(D), d ′ = last(D ′ ), all the following conditions are satisfied:
that we call a pseudo-shuffle, see Figure9.Definition 4.2 (pseudo-shuffle ∥).Let P ∈ Z 2 and P ′ ∈ s-Z • 2 .Consider the standard decomposition of P , P = L • C • R or P = L • C, and write P ′ as in Definition 3.4,

Figure 24 .
Figure 24.Log-log plot of r n − 1 against n.
, we show the sequence C n plotted against 1/ √ n, after having eliminated the O(1/n) term.In Figure 31, we show the sequence C n plotted against 1/ √ n, after having eliminated the O(1/n) term and the O(1/n 3/2 ) term.From the latter plot we estimate C = 0.095 ± 0.003.