The starting point of this paper is a collection of properties of an algorithm that have been distilled from the informal descriptions of what an algorithm is that are given in standard works from the mathematical and computer science literature. Based on that, the notion of a proto-algorithm is introduced. The thought is that algorithms are equivalence classes of proto-algorithms under some equivalence relation. Three equivalence relations are defined. Two of them give bounds between which an appropriate equivalence relation must lie. The third lies in between these two and is likely an appropriate equivalence relation. A sound method is presented to prove, using an imperative process algebra based on ACP, that this equivalence relation holds between two proto-algorithms.
翻译:本文的起点,是从数学与计算机科学文献的标准著作中对算法的非形式化描述中所提炼出的一组算法性质。基于此,我们引入了原始算法(proto-algorithm)的概念。其基本思想是:算法是原始算法在某种等价关系下的等价类。本文定义了三种等价关系,其中两种界定了恰当等价关系所应处的范围,而第三种则介于两者之间,很可能就是恰当的等价关系。我们提出了一种有效的方法,利用基于ACP(代数沟通过程代数)的指令式过程代数,来证明两个原始算法之间具有该等价关系。