The volume of an n-dimensional L^p-ball of radius R is vol(R, p, n) = ((2^n)*(gamma((1/p)+1))^n /gamma((n/p)+1)*R^n for all real p > 0. For the Hilbert space L^2 we recover the familiar Euclidean volume of a unit n-ball (Pi^(n/2))/gamma((n/2)+1) which attains a maximum value at dimension n=5. The present sequence describes the same phenomenon for positive integer values of p.
We can find very tight bounds for a(n):
define c := 2*gamma(1 + 1/p), then
floor(p*(c^p - 1/2) - 1/2) <= a(n) <= ceiling(p*(c^p - 1/2)).
First we treat V(n, p, 1) as a real-valued smooth function w.r.t. n, then we can maximize it. Since log(x) is an increasing function, the critical points of log(V(n, p)) will be the same as the critical points for V(n, p).
(d/dn)log(V(n, p)) = log(c) - 1/(p(digamma((n+p)/p))).
(d^2/dn^2)log(V(n, p)) = -polygamma(1, (n+p)/p))/p^2 < 0 for all n > 0, p > 0.
This is because polygamma(1, x) = Sum_{k>=1} 1/(x + k)^2 > 0 for all x > 0.
Therefore (d/dx)V(n, p) is a decreasing function w.r.t. n, which means there is only one local extremum. We can bound that local extremum similar to the way that we find bounds for the case where p=2 and the radius varies: see Wikipedia link.
Let's call this extremum n_.
dV/dn = log(c) - 1/(p*(digamma((n_+p)/p))) = 0;
p*log(c) = digamma((n_ + p) / p);
p*(inverse_digamma(plog(c)) - 1) = n_.
We can see from [2] that
log(y - 1/2) < digammma(y) < log(y + e^-m - 1),
where m is the Euler-Mascheroni constant.
Thus
log((n_+ p)/p - 1/2) < p*log(c) < log((n_ + p)/p + e^-m - 1);
c^p - e^-m + 1 < (n_ + p)/p < c^p + 1/2;
p*(c^p - e^-m) < n_ < p*(c^p - 1/2).
We can now improve on these bounds; define:
n` = p*(c^p - 1/2).
We can prove
n` - n_ < 1/2;
p*(c^p - 1/2 - inverse_digamma(p*log(c))) < p/c^p < 1/2;
c^p + 1/2 - 1/c^p < inverse_digamma(log(c^p)), say x := c^p;
x + 1/2 - 1/x < inverse_digamma(log(x));
digamma(x + 1/2 - 1/x) < log(x)
(inverse_digamma is an increasing function).
We see from [1] that digamma(1/log(1 + 1/x)) < log(x), therefore we only need to show
digamma(x + 1/2 - 1/x) < digamma(1/log(1 + 1/x)),
and since inverse_digamma is an increasing function, it suffices to show
x + 1/2 - 1/x < 1/log(1 + 1/x),
which is true for x > 0, and can be seen from an inequality solver such as Wolfram Alpha: https://www.wolframalpha.com/input/?i=x+%2B+%C2%BD+-+1%2Fx+%3C+1%2Flog%281+%2B+1%2Fx%29.
thus
n` - 1/2 < n_ < n`.
Now we have to confirm that n_ is the global maximum by checking the boundaries.
V(p, 0) = c^p < n_;
Limit_{n->oo} V(p, n) = lim_{n->oo} (2*sqrt(2*Pi/p))^n / (sqrt(2*Pi*n/p) n^n) = 0 < n_.
Therefore n_ is the global maximum, and thus we can solve for a(n).
floor(n` - 1/2) <= a(n) <= ceiling(n`).
So to find a(n) we only need to iterate over at most three values. (End)
|