English

Program algebra for random access machine programs

Programming Languages 2023-01-26 v3 Computational Complexity

Abstract

This paper presents an algebraic theory of instruction sequences with instructions for a random access machine (RAM) as basic instructions, the behaviours produced by the instruction sequences concerned under execution, and the interaction between such behaviours and RAM memories. This theory provides a setting for the development of theory in areas such as computational complexity and analysis of algorithms that distinguishes itself by offering the possibility of equational reasoning to establish whether an instruction sequence computes a given function and being more general than the setting provided by any known version of the RAM model of computation. In this setting, a semi-realistic version of the RAM model of computation and a bit-oriented time complexity measure for this version are introduced. Under the time measure concerned, semi-realistic RAMs can be simulated by multi-tape Turing machines with quadratic time overhead.

Keywords

Cite

@article{arxiv.2007.09946,
  title  = {Program algebra for random access machine programs},
  author = {C. A. Middelburg},
  journal= {arXiv preprint arXiv:2007.09946},
  year   = {2023}
}

Comments

27 pages, revision of v2 with presentation improved. arXiv admin note: substantial text overlap with arXiv:1901.08840, arXiv:1808.04264