Analytic Combinatorics/Saddle-point Method

From testwiki
Jump to navigation Jump to search

Theorem

Theorem due to Flajolet and Sedgewick[1].

If F(z) is an admissible function then

[zn]F(z)F(ζ)ζn+12πf'(ζ) as n

where ζ is such that F'(ζ)=0 and F(z)zn+1=ef(z).

Proof

Proof due to Flajolet and Sedgewick[2].

By Cauchy's coefficient formula:

[zn]F(z)=12πiCF(z)zn+1dz

We can visualise this as a 3D graph whose x and y axes are the real and imaginary parts of z respectively and the z axis is the real part of F(z)zn+1.

For the generating functions we are interested in, F(z)zn+1 has a saddle-point on the positive real axis[3]. This is the highest altitude of the green path in the above graph. Call this ζ.

Being an analytic function (except at z=0), we can deform the contour to go through the saddle-point. The biggest contributor to the integral is made by the part of the contour near the saddle-point (call this C0, which is the red part of the path in the graph below). The rest of the contour (call this C1, the green part of the path) contributes relatively little.

12πiCF(z)zn+1dz=12πiC0F(z)zn+1dz+12πiC1F(z)zn+1dz

In the below, we set F(z)zn+1=ef(z)

[zn]F(z)=12πiCF(z)zn+1dz=12πiCef(z)dz

We can deform the contour even more to make the part of the contour near the saddle-point a straight line (in the complex plane). C0 is deformed to a straight, vertical line, perpendicular to the real axis, crossing the saddle-point, starting from ia to ia. a is chosen such that f'(ζ)a2 and f'(ζ)a30 as n. This is so that the Taylor series expansion around ζ

f(z)=f(ζ)+12f'(ζ)(zζ)2+16f'(ζ)(zζ)3+.

can be reduced to just f(ζ)+12f'(ζ)(zζ)2.

f'(ζ)=F'(ζ)F(ζ)+n+1ζ2 is real-valued because ζ is real and F(z), being a generating function, has real coefficients. z=ζ+ix, so (zζ)2=x2 is real. Therefore, 12f'(ζ)(zζ)2 is real-valued.

So, any imaginary part of f(z) can be moved outside the integral, leaving just a real-valued integrand:

12πiC0F(z)zn+1dz=12πiC0ef(z)dzef(ζ)2πiC0e12f'(ζ)(zζ)2dz

This also means that the real-valued surface we discussed in the beginning is a valid estimate of the potentially complex-valued F(z)zn+1.

C0:x[a,a]ix+ζ

We change variables to remove the imaginary part of the interval and turn it into a real-valued integrand over the real line. Setting g1(x)=xζi:

C0e12f'(ζ)(zζ)2dz=aae12f'(ζ)(ix+ζζ)2idx=iaae12f'(ζ)x2dx
aae12f'(ζ)x2dx=e12f'(ζ)x2dx2ae12f'(ζ)x2dx

Because e12f'(ζ)x2 is very small for large x:

|ae12f'(ζ)x2dx|Ae12f'(ζ)a2

Due to our choice of a before, as n, e12f'(ζ)a20.

Therefore, the integral can be estimated by a Gaussian integral which we know how to calculate:

aae12f'(ζ)x2dxe12f'(ζ)x2dx=2πf'(ζ)

Putting it all together:

12πiCF(z)zn+1dzef(ζ)2πiC0e12f'(ζ)(zζ)2dz=ef(ζ)i2πiaae12f'(ζ)x2dxef(ζ)2π2πf'(ζ)=F(ζ)ζn+12πf'(ζ)

Admissibility

This formalises the conditions under which we can apply the saddle-point method. Definition from Flajolet and Sedgewick[4] and Wilf[5]. Also known as Hayman-admissibility[6].

The function F(z) is admissible if:

  • F(z) is a function with radius of convergence R(0<R)
  • There exists an R0<R such that F(r)>0(R0<r<R)
  • H1: limrRa(r)=+ and limrRb(r)=+
  • H2: There exists a function δ(r) defined for R0<r<R such that 0<δ(r)<π and as rR
F(reiθ)F(r)eiθa(r)12θ2b(r)
uniformly for |θ|δ(r)
  • H3: Uniformly for δ(r)|θ|π and as rR
F(reiθ)=o(F(r)b(r))

Intuitive explanation

To find the coefficients of a function, we can use the Cauchy coefficient formula. This requires us to find the integral of a path in the complex plane. Imagine trying to estimate this integral, displayed as the red and green line below.

The biggest contribution to the integral comes from around the saddle-point (displayed in red) and the tail's contribution (displayed in green) is negligible (by H3).

Therefore, to estimate the integral of the entire path you can estimate the integral of just the red part of the path. This is the asymptotic relation described in H2.

Example

Example from Wilf[7] and Flajolet and Sedgewick[8].

Say we want to estimate the coefficients of ez:

  1. ez has radius of convergence + and is positive for all z0.
  2. H1: a(z)=z(ez)ez=zezez=z. Therefore, limz+z=+.
  3. H1: b(z)=z2d2dz2lnez+zddzlnez=z2d2zdz2+zdzdz=z. Therefore, limz+z=+.
  4. Find the saddle-point ζ by solving the equation a(ζ)=ζ=n. Therefore, ζ=n and the path of integration is the circle of radius n centred at the origin.
  5. Choose δ(neiθ)=n25.
  6. H3: For n25|θ|π as n+
    |eneiθ|=encosθencosn25=o(enn).
  7. H2: For n<1eneiθen+iθn12θ2n=eneiθn12θ2n (due to the power series expansion of eiθ).
  8. Apply the theorem: [zn]ezennn2πn.

Saddle-points of higher order

Theorem from Flajolet and Sedgewick[9].

The above assumes F(ζ)=0 and F(ζ)0. In the case where all derivatives up to the pth are zero but F(p+1)0, we call it a saddle-point of order or multiplicity p[10].

If F(z) has a saddle-point of order p+1:

[zn]F(z)ωpΓ(1p)F(ζ)ζ(n+1)f(p)(ζ)/p!p

where ωp=1.

Notes

Template:Reflist

References

Template:BookCat

  1. Flajolet and Sedgewick 2009, pp. 553.
  2. Flajolet and Sedgewick 2009, pp. 551-554.
  3. Flajolet and Sedgewick 2009, pp. 549.
  4. Flajolet and Sedgewick 2009, pp. 565.
  5. Wilf 2006, pp. 199.
  6. After Walter Hayman.
  7. Wilf 2006, pp. 198.
  8. Flajolet and Sedgewick 2009, pp. 555-557.
  9. Flajolet and Sedgewick 2009, pp. 603.
  10. Flajolet and Sedgewick 2009, pp. 545.