We develop a behavioural theory of reflective parallel algorithms (RAs), i.e. synchronous parallel algorithms that can modify their own behaviour. The theory comprises a set of postulates defining the class of RAs, an abstract machine model, and the proof that all RAs are captured by this machine model. RAs are sequential-time, parallel algorithms, where every state includes a representation of the algorithm in that state, thus enabling linguistic reflection. Bounded exploration is preserved using multiset comprehension terms as values. The abstract machine model is defined by reflective Abstract State Machines (rASMs), which extend ASMs using extended states that include an updatable representation of the main ASM rule to be executed by the machine in that state.
翻译:本文发展了一种关于反射并行算法(RAs)的行为理论,即能够修改自身行为的同步并行算法。该理论包含一组定义RA类别的公设、一个抽象机器模型,以及证明所有RA均可由此机器模型所捕获。RAs是顺序时间、并行执行的算法,其中每个状态都包含该状态下算法的表示,从而实现了语言反射。通过使用多重集理解项作为值,保持了有界探索性。抽象机器模型由反射抽象状态机(rASMs)定义,它通过扩展状态对ASM进行了扩展,扩展状态中包含一个可由机器在该状态下执行的主要ASM规则的可更新表示。