Section 10.1.2 of Sanjeev Arora and Boaz Barak's Computational Complexity: A Modern Approach defines random self-reducibility and proves hardness of the discrete logarithm by reducing a worst case input to a series of random instances. The proof is rather straight forward, but I am having trouble replicating the final error bound.
In particular, randomized algorithm $A'$ is said to run algorithm $A$ $O(\frac{1}{\delta \log \frac{1}{\epsilon}})$ times. $A$ succeeds with probability $\delta$, so one possible bound of the error probability of $A'$ should be
$$ \mathbb{P}[A' \text{ fails }] = (1 - \delta)^{\frac{1}{\delta \log\frac{1}{\epsilon}}} \leq (e^{-\delta})^{\frac{1}{\delta \log\frac{1}{\epsilon}}} = e^{\frac{1}{\log \epsilon}} \neq \epsilon $$
Arora and Barak are able to achieve the bound $\mathbb{P}[A' \text{ fails }] \leq \epsilon$, but it seems my attempts have resulted in loose bounds. I'd love some direction as to how I could potentially reach the tighter bound that the textbook achieves.
Alternatively, because the book is a draft, it is possible this is a typo. With $O(\frac{\log \frac{1}{\epsilon}}{\delta})$ runs of $A$, my simple technique above is able to reach the $\epsilon$ bound.