BackgroundQuestions
We're given a coin that shows heads with an unknown probability, $\lambda$. The goal is to use that coinLet (and possibly also a fair coin) to build a "new" coin that shows heads with$f(\lambda):[0,1]\to (0,1)$ have a probability that depends on $\lambda$, call it $f(\lambda)$. This is the Bernoulli factory problem, and it can be solved only for certain functions $f$. (For example, flipping the coin twice and taking heads only if exactly one coin shows heads, we can simulate the probability $2\lambda(1-\lambda)$.$\beta-\lfloor\beta\rfloor$)
This question is a continuation of-Hölder continuous another question of mine$\lfloor\beta\rfloor$-th derivative, which seeks ways to compute polynomials that converge from above and below to $f$ in a manner that solves the Bernoulli factory problem for $f$. These polynomials form an approximation scheme forwhere $f$. See that question for more details, but here$\beta>0$ is a recap:
Formal statement: There exist two sequences of polynomials, namely—
- $g_{n}(\lambda): =\sum_{k=0}^{n}a(n, k){n \choose k}\lambda^{k}(1-\lambda)^{n-k}$, and
- $h_{n}(\lambda): =\sum_{k=0}^{n}b(n, k){n \choose k}\lambda^{k}(1-\lambda)^{n-k}$,
for every integer $n\ge1$, such that—non-integer.
- $0\le a(n, k)\le b(n, k)\le1$ What is an explicit upper bound (with no hidden constants) on the error in approximating $f$ with the Lorentz operators $(Q_{n,r} f)$,
- $\lim_{n}g_{n}(\lambda)=\lim_{n}h_{n}(\lambda)=f(\lambda)$ for every described below, of the form $\lambda\in[0,1]$$C\cdot M\cdot\max((\lambda(1-\lambda)/n)^{1/2}, 1/n)^r$, where $C=C(r)$ and $M=M(f,r)$ are constants?
- for every $m<n$Same question, both $(g_{n} - g_{m})$ andbut for the polynomial family $(h_{m} - h_{n})$ have non-negative coefficients once$(g_n)$ given in $g_{n}$(1), $g_{m}$below.
- Same questions as 1 and 2, but $h_{n}$, and$\beta$ is allowed to be an integer. $h_{m}$ are rewritten(Note that the method of Holtz et al.'s paper as degreewritten doesn't apply to non-$n$ polynomials in Bernstein form,integer $\beta$; see also Conjecture 34 of that paper.)
where $f(\lambda)$ is continuous on $[0, 1]$ (Nacu and Peres 2005; Holtz et al. 2011), and the goal is to find the appropriate values for $a(n, k)$ and $b(n, k)$.
It is allowed for $a(n, k)\lt0$ for a given $n$ and some $k$, in which case all $a(n, k)$ for that $n$ are taken to be 0 instead. It is allowed for $b(n, k)\gt1$ for a given $n$ and some $k$, in which case all $b(n, k)$ for that $n$ are taken to be 1 instead.
This timeHoltz et al. 2011, thoughin the paper "New coins from old, we focus onsmoothly", studied a family of polynomials specific approximation scheme,$(Q_{n,r} f)$ (which they call the one presented by Holtz et al. 2011, in the paper "New coins from old, smoothly".
The scheme involves building polynomialsLorentz operators) that are shifted upward and downward to approximate a continuous function $f$ from above and below.
The scheme achieves a convergence rate that generally depends onThey used the smoothnessLorentz operators to build a family of polynomials $(g_n)$ that converge from above to $f$; in fact, it can achieve and satisfy the highest convergence rate possible for functionsfollowing: $(g_{2n}−g_{n})$ is a polynomial with that smoothnessnon-negative Bernstein coefficients, once it's rewritten to a polynomial in Bernstein form of degree exactly $2n$.
Specifically, Holtz et al.They proved, among other results, the following results:
A function $f(\lambda):[0,1]\to(0,1)$ can be approximated, in a manner that solves the Bernoulli factory problem, at the rate $O((\Delta_n(\lambda))^\beta)$ if and only if $f$ is $\lfloor\beta\rfloor$ times differentiable and has a ($\beta-\lfloor\beta\rfloor$)-Hölder continuous $\lfloor\beta\rfloor$-th derivative, where $\beta>0$ is a non-integer and $\Delta_n(\lambda) = \max((\lambda(1-\lambda)/n)^{1/2}, 1/n)$. (Roughly speaking, the rate is $O((1/n)^{\beta})$ when $\lambda$ is close to 0 or 1, and $O((1/n)^{\beta/2})$ elsewhere.)
A function $f(\lambda):[0,1]\to(0,1)$ can be approximated, in a manner that solves the Bernoulli factory problem, at the rate $O((\Delta_n(\lambda))^{r+1})$ only if the $r$th derivative of $f$ is in the Zygmund class, where $r\ge 0$ is an integer.
A function $f(\lambda):[0,1]\to(0,1)$ admits a family $(g_n)$ described above that converges at the rate—
- $O((\Delta_n(\lambda))^\beta)$ if and only if $f$ is $\lfloor\beta\rfloor$ times differentiable and has a ($\beta-\lfloor\beta\rfloor$)-Hölder continuous $\lfloor\beta\rfloor$-th derivative, where $\beta>0$ is a non-integer and $\Delta_n(\lambda) = \max((\lambda(1-\lambda)/n)^{1/2}, 1/n)$. (Roughly speaking, the rate is $O((1/n)^{\beta})$ when $\lambda$ is close to 0 or 1, and $O((1/n)^{\beta/2})$ elsewhere.)
- $O((\Delta_n(\lambda))^{r+1})$ only if the $r$th derivative of $f$ is in the Zygmund class, where $r\ge 0$ is an integer.
Let $\alpha = r+\beta$, let $b = 2^s$, and let $s\ge0$$s\gt 0$ be an integer. Let $Q_{n, r}f$ be a degree $n+r$ approximating polynomial called a Lorentz operator (see the paper for details on the Lorentz operator). Let $n_0$ be the smallest $n$ such that $Q_{n_0, r}f$ has coefficients within [0, 1]. Define the following for every integer $n \ge n_0$ divisible by $n_{0}b$:
Let $B_{n, k, F}$$B_{n}(F)$ be the $k$th coefficient of the degree-$n$ Bernstein polynomial of $F$.
Let $C(\lambda)$ be a polynomial as follows: Find the degree-$n$ Bernstein polynomial of $\phi(n, r+\beta, \lambda)$, then elevaterewrite it toas a degree-$n+r$ Bernstein polynomial.
Then the coefficients for the degree $n+r$ polynomial that approximates $f$ are—is— $$g(n, r,\lambda) = f_{n}(\lambda) - D \cdot C(\lambda)\tag{1}$$.
- $g(n, r, k) = B_{n+r,k,f_{n}} - D * B_{n+r,k,C}$, and
- $h(n, r, k) = B_{n+r,k,f_{n}} + D * B_{n+r,k,C}$.
However, the Holtz method is not yet implementable, for the following reasons among others:in part because it relies on hidden constants with no upper bounds given.
- The paper doesn't give values or upper bounds for important constants, notably the three constants $s$, $\theta_{\alpha}$, and $D$. For example, the paper says only that $D$ should be chosen "large enough".
- The method's results are only asymptotic.
- The paper has no examples of how the scheme works for a selection of functions $f$.
QuestionsBackground
What are practical upper bounds for $s$, $\theta_{\alpha}$, and $D$ for the method above, given a factory function $f$, with or without additional assumptions on $f$ (such as smoothness and/or concavity requirements on $f$ and/or its derivatives)?
What are other practical ways to apply the Holtz method to certain functions to find polynomials that converge to those functions?
Given a continuous function $f$ that maps $[0,1]$ to $(0,1)$, is the Holtz method valid in the following cases? (Note that the method as written doesn't apply to non-integer $\alpha$; see also Conjecture 34, which claims the converse of the second result given above.)
- With $\alpha=1, r=0$, when $f$ is Lipschitz continuous and/or differentiable.
- With $\alpha=2, r=1$, when $f$ has a Lipschitz continuous first derivative.
- With $\alpha=2, r=2$, when $f$ is twice differentiable.
- With $\alpha=4, r=3$, when $f$ has a Lipschitz continuous third derivative.
- With $\alpha=4, r=4$, when $f$ is four times differentiable.
- With $\alpha=5, r=4$, when $f$ has a Lipschitz continuous fourth derivative.
I asked this question in order to solve the so-called Bernoulli factory problem, described next. We're given a coin that shows heads with an unknown probability, $\lambda$. The goal is to use that coin (and possibly also a fair coin) to build a "new" coin that shows heads with a probability that depends on $\lambda$, call it $f(\lambda)$. This is the Bernoulli factory problem, and it can be solved only if $f$ is continuous (Keane and O'Brien 1994).
However, since I asked this question I have found a Bernoulli factory algorithm that I believe is general enough to cover all the cases that this question would help solve.
Since this question may be of broader interest, though, I leave this question open. See also my other open questions about the Bernoulli factory problem.
Based on this attempt, the C4 continuous case is efficient enough for my purposes, but the case of functions with lesser regularity is not so efficient (such as Lipschitz or C2).
Here is my current progress for the Lorentz operator for $\alpha=2$, so $r=2$ (which applies to twice-differentiable functions with Hölder continuous second derivative, even though the paper appears not to apply when $\alpha$ is an integer). Is the following work correct?
The Lorentz operator for $r=2$ finds the degree-n Bernstein polynomial for the target function $f$, elevates it to degree $n+r$, then shifts the coefficient at $k+1$ by $-f\prime\prime(k/n) A(n,k)$ (but the coefficients at 0 and $n+r$ are not shifted this way), where:
$$A(n,k) = (1/(4*n)) * 2 *(n+2-k)/((n+1)*(n+2)),$$
where $k$ is an integer in $[0,n+r]$. Observing that $A(n,k)$ equals 0 at 0 and at $n+r$, and has a peak at $(n+r)/2$,
the shift will be no greater (in absolute value) than
$A(n,(n+r)/2)*F$, where $F$ is the maximum absolute value
of the second derivative of $f(\lambda)$. $A(n,(n+r)/2)$ is bounded
above by $(3/16)/n$ for $n\ge 1$, and by $(3/22)/n$ for $n\ge 10$.
Now, find $\theta_\alpha$ for $\alpha=2$, according to Lemma 25:
Let $0<\gamma<2^{\alpha/2}-1$ ($\gamma<1$ if $\alpha=2$).
Solve for $K$: $$(1-(1+\gamma)/2^{\alpha/2} - 4/(4*K)) = 0.$$ The solution for $\alpha=2$ is $K = 2/(1-\gamma)$.
Now find: $$\theta_a = ((4/4)*K^{\alpha/2}/n^\alpha) / ((1-(1+\gamma)/2^\alpha)/n^\alpha)$$ The solution for $\alpha=2$ is $\theta_a = 8/((\gamma-3)*(\gamma-1))$.
For $\gamma=1/100$ and $\alpha=2$, $\theta_a = 80000/29601 \approx 2.703$.
There's no need to check whether the output polynomials have Bernstein coefficients in $(0, 1)$, since out-of-bounds polynomials will be replaced with 0 or 1 as necessary — which is more practical and convenient.
Now all that remains is to find $D$ given $\alpha=2$. I believe this will involve the following:
- Find upper bounds for the constants $C_{19}$, $C_{21}$, and $C_{24}$ (used in Lemmas 19, 21, and 24, respectively) given $\alpha$ and $r$ (and for $C_{19}$ at least, the best I can do is a visual inspection of the plot).
- Calculate $t = C_{24} C_{19} (1+2 C_{21}) b^{\alpha/2} M$, where $M$ is the Hölder constant of $f$'s $r$th derivative (see "Step 4" in "The Iterative Construction").
- Find the maximum value of $(t (x+(1-x))^r B_n \Delta_n{\alpha}) / ((x+(1-x))^r B_n\phi_n)$ (the best I can do is a visual inspection), and set $D$ to that value.
Moreover, there remains to find the parameters for the Lorentz operator when $r$ is 0, 1, 2, or 4. (When $r=0$ or $r=1$, the Lorentz operator is simply the Bernstein polynomial of degree $n$, elevated $r$ degrees to degree $n+r$.)