A Behavioural Theory of Recursive Algorithms
“What is an algorithm?” is a fundamental question of computer science. Gurevich's behavioural theory of sequential algorithms (aka the sequential ASM thesis) gives an abstract answer without referring to a particular language or programming style, and shows that sequential algorithms are captured by sequential Abstract State Machines. Moschovakis criticised that recursive algorithms such as mergesort are not covered by this theory, but can be expressed by recursors. In this article we propose a language-independent definition of the notion of recursive algorithm generalising Gurevich's postulates, and prove that recursive algorithms are captured by recursive Abstract State Machines. Furthermore, we show that recursive algorithms are behaviorally equivalent to finitely composed concurrent algorithms all of their runs are partial-order runs.
READ FULL TEXT