Exact Exploration
Andreas Blass, Nachum Dershowitz, Yuri Gurevich
TL;DR
The paper strengthens the Abstract State Machine (ASM) framework by refining the axioms to account for exact intra-step exploration, enabling ASMs to emulate not only state transitions but also the precise tests performed to determine the next move. It introduces the exact exploration postulate, with state-dependent explore sets Γ(X) and a discrimination order, and extends the ASM theorem to guarantee clash-free emulations that explore only the locations actually used by the original algorithm. By handling partial equality and partial operations, and by incorporating case statements and richer intra-step queries, the work broadens ASM universality to algorithms operating over partial algebras and computable reals, thereby reinforcing the Church-Turing thesis from first principles. The findings have significant implications for modeling computation with partial information, and for achieving faithful, parsimonious representations of sequential algorithms across diverse data representations. Overall, the results establish ASMs as a precise, universal, and robust model for sequential computation with refined control over exploration and partiality.
Abstract
Recent analysis of classical algorithms resulted in their axiomatization as transition systems satisfying some simple postulates, and in the formulation of the Abstract State Machine Theorem, which assures us that any classical algorithm can be emulated step-by-step by a most general model of computation, called an ``abstract state machine''. We refine that analysis to take details of intra-step behavior into account, and show that there is in fact an abstract state machine that not only has the same state transitions as does a given algorithm but also performs the exact same tests on states when determining how to proceed to the next state. This enhancement allows the inclusion -- within the abstract-state-machine framework -- of algorithms whose states only have partially-defined equality, or employ other native partial functions, as is the case, for instance, with inversion of a matrix of computable reals.
