{U == 1 + z, S == U + S T U z^2, T == z^3 + 2 T z^3 + T z^4 + S T^2 U^2 z^4, S0 == S + S0 z}

One of these 2 is the generating function.  Setting z=0, we can quickly see that first one blows up as z->0 so must be second one.

sol = S0/.Extract[solset, 2] <br />

1/(2 z^2 (-1 + z^2)) (-1 - 2 z^2 - 2 z^3 - z^4 + z^5 + z^6 + (1 - 4 z^3 - 2 z^4 - 2 z^5 + 2 z^6 - 7 z^8 - 6 z^9 - z^10 + 2 z^11 + z^12)^(1/2))

Singularity occurs either where denominator is zero (0 or ±1, but we know analytic at z=0 as it is a generating function.) or where square root is zero.  Let's find where square root is zero.

poly = 1 - 4 z^3 - 2 z^4 - 2 z^5 + 2 z^6 - 7 z^8 - 6 z^9 - z^10 + 2 z^11 + z^12

1 - 4 z^3 - 2 z^4 - 2 z^5 + 2 z^6 - 7 z^8 - 6 z^9 - z^10 + 2 z^11 + z^12

roots = NSolve[poly == 0, z]

r = z/.Part[roots, 9, 1]

0.553171

This is our (unique) dominant singularity.  (It is smaller in magnitude than the singularities z=±1 caused by the denominator.)

The next few commands are to simply divide poly by (1-z/r) to get poly2 and then check that this worked.

poly2a = poly/(1 - z/r)

(1 - 4 z^3 - 2 z^4 - 2 z^5 + 2 z^6 - 7 z^8 - 6 z^9 - z^10 + 2 z^11 + z^12)/(1 - 1.80776 z)

Series[poly2a, {z, 0, 14}]

1 + 1.80776 z + 3.26799 z^2 + 1.90775 z^3 + 1.44875 z^4 + 0.618994 z^5 + 3.11899 z^6 + 5.63839 z^7 + 3.19285 z^8 - 0.228094 z^9 - 1.41234 z^10 - 0.553171 z^11 + 4.54747*10^-13 z^14 + O[z]^15

poly2 = 1 + 1.80776 z + 3.26799 z^2 + 1.90775 z^3 + 1.44875 z^4 + 0.618994 z^5 + 3.11899 z^6 + 5.63839 z^7 + 3.19285 z^8 - 0.228094 z^9 - 1.41234 z^10 - 0.553171 z^11

1 + 1.80776 z + 3.26799 z^2 + 1.90775 z^3 + 1.44875 z^4 + 0.618994 z^5 + 3.11899 z^6 + 5.63839 z^7 + 3.19285 z^8 - 0.228094 z^9 - 1.41234 z^10 - 0.553171 z^11

Expand[poly2 * (1 - z/r)]

1 + 0. z + 0. z^2 - 4. z^3 - 2. z^4 - 2. z^5 + 2. z^6 - 2.66454*10^-15 z^7 - 7. z^8 - 6. z^9 - 1. z^10 + 2. z^11 + 1. z^12

This is close to poly, so our polynomial division worked.

poly

1 - 4 z^3 - 2 z^4 - 2 z^5 + 2 z^6 - 7 z^8 - 6 z^9 - z^10 + 2 z^11 + z^12

left = 1/(2 z^2 (-1 + z^2)) * Sqrt[poly2]

1/(2 z^2 (-1 + z^2)) (√ (1 + 1.80776 z + 3.26799 z^2 + 1.90775 z^3 + 1.44875 z^4 + 0.618994 z^5 + 3.11899 z^6 + 5.63839 z^7 + 3.19285 z^8 - 0.228094 z^9 - 1.41234 z^10 - 0.553171 z^11))

This is the portion next to the singularity, (1-z/r)^(1/2).

K = left/.z→r

-4.52377

K2 = K/Gamma[-1/2]

1.27613

1/r

1.80776

So V_n ~ 1.27613*(1.80776)^n*n^(-3/2)

polySol = Series[sol, {z, 0, 2000}] ;

We can use the above series to check our asymptotics.  Let's pull out the term in front of the z^500.

coeffs = CoefficientList[polySol, z] ;

act500 = Part[coeffs, 501]

42434444124725743388925237058372057874808988556468284526546829660448660736931701745480185588581959062005443274738913026972688

est500 = K2 * (1/r)^500 * 500^(-3/2)

4.24402*10^124

N[act500/est500]

0.999863

This shows our asymptotics to be close at n=500.  By the same method we can check at other n, or write a program to compare for all n.


Created by Mathematica  (December 22, 2006) Valid XHTML 1.1!