This paper is a thought experiment on exponentiating algorithms. One of the main contributions of this paper is to show that this idea finds material implementation in exponentiating fixed-point computation algorithms. Various problems in computer science can be cast as instances of computing a fixed point of a map. In this paper, we present a general method of boosting the convergence of iterative fixed-point computations that we call algorithmic boosting, which is a (slight) generalization of algorithmic exponentiation. We first define our method in the general setting of nonlinear maps. Secondly, we restrict attention to convergent linear maps and show that our algorithmic boosting method can set in motion exponential speedups in the convergence rate. Thirdly, we show that algorithmic boosting can convert a (weak) non-convergent iterator to a (strong) convergent one. We then consider a variational approach to algorithmic boosting providing tools to convert a non-convergent continuous flow to a convergent one. We, finally, discuss implementations of the exponential function, an important issue even for the scalar case.
翻译:本文是对指数化算法的一次思想实验。本文的主要贡献之一在于表明,这一思想在指数化不动点计算算法中找到了具体实现。计算机科学中的许多问题可以被归结为计算映射的不动点。本文提出了一种通用的方法来加速迭代不动点计算的收敛,我们称之为算法加速,它是算法指数化的一种(轻微)推广。首先,我们在非线性映射的一般框架中定义该方法。其次,我们将注意力限制在收敛的线性映射上,并表明我们的算法加速方法可以实现收敛速度的指数级加速。第三,我们证明算法加速可以将(弱)非收敛迭代器转化为(强)收敛迭代器。接着,我们考虑一种变分法视角下的算法加速,提供了将非收敛连续流转化为收敛连续流的工具。最后,我们讨论指数函数的实现问题,即使对于标量情况,这也是一个重要议题。