# The Algebraic View of Computation: Implementation, Interpretation and Time

## Abstract

**:**

- Computation has an abstract algebraic structure. Semigroups (sets with associative binary operation) are natural generalizations of models of computation (Turing machines, $\lambda $-calculus, finite state automata, etc.).
- Algebraic structure-preserving maps are fundamental for any theory of computers. Being a computer is defined as being able to emulate/implement other computers, i.e., being a homomorphic/isomorphic image. The rule of keeping the “same shape” of computation applies without exception, making programability and interactivity possible.
- Interpretations are more general functions than implementations. An arbitrary function without morphic properties can freely define semantic content for a computation. However, programability does not transfer to this level of semantics.
- Computers are finite. Finiteness renders decision problems trivial to solve, but computability with limited resources is a fundamental engineering problem that still requires mathematical research.
- Computers are general-purpose. They should be able to compute everything within their finite limits.
- Hierarchy is an organizing principle of computation. Artificial computing systems tend to have one-way (control) information flow for modularity. Natural systems with feedback loops also admit hierarchical models.

## 1. Semigroup—Composition Table of Computations

“Abstract computers (such as finite automata and Turing machines) are essentially function-composition schemes.”[11]

“Intuitively, a computing machine is any physical system whose dynamical evolution takes it from one of a set of ‘input’ states to one of a set of ‘output’ states.”[12]

“A computation is a process that obeys finitely describable rules.”[13]

“To compute is to execute an algorithm.”[14]

#### 1.1. Generalizing Traditional Models of Computation

#### 1.2. Definition of Semigroups

- The composition has to be associative,$$x\left(yz\right)=\left(xy\right)z,$$
- The table also has to be self-contained, meaning that the result of any composition should also be included in the table. Given a finite set of n elements, the $n\times n$ square table will encode the result of combining any two elements of the set.

**Principle**

**1**(State-event abstraction)

**.**

“Numbers measure size, groups measure symmetry.”[18]

#### 1.3. Computation as Accretion of Structure

## 2. Computation and Time

#### 2.1. Different Times

#### 2.2. Not Enough Time

#### 2.3. Timeless Computation?

## 3. Homomorphism—The Algebraic Notion of Implementation

“In enabling mechanism to combine together general symbols in successions of unlimited variety and extent, a uniting link is established between the operations of matter and the abstract mental processes of the most abstract branch of mathematical science.”[25]

“A physical system implements a given computation when the causal structure of the physical system mirrors the formal structure of the computation.”[27]

#### 3.1. Homomorphisms

“…we need to discover whether the laws of physics are prior to, in the sense of constraining, the possibilities of computation, or whether the laws of physics are themselves consequences of some deeper, simpler rules of step-by-step computation.”[29]

“‘A mathematical theorem,’ she’d proclaimed, ‘only becomes true when a physical system tests it out: when the system’s behaviour depends in some way on the theorem being true or false.”’

“‘…And if a mathematician could test those steps by manipulating a finite number of physical objects for a finite amount of time—whether they were marks on paper, or neurotransmitters in his or her brain—then all kinds of physical systems could, in theory, mimic the structure of the proof…with or without any awareness of what it was they were proving.’”[30]

#### 3.2. Computers as Physical Systems

“Computing processes are ultimately abstractions of physical processes: thus, a comprehensive theory of computation must reflect in a stylized way aspects of the underlying physical world.”[31]

“Our computers do no more than re-program a part of the universe to make it compute what we want it to compute.”[32]

“A computer is an arrangement of some of the material constituents of the Universe into a configuration whose natural evolution in time according to the laws of Nature simulates some mathematical process.”[29]

“…the universal computer can eventually do what any other computer can. In other words, given enough time it is universal.”[33]

“In a sense, nature has been continually computing the ‘next state’ of the universe for billions of years; all we have to do—and, actually, all we can do—is ‘hitch a ride’ on this huge ongoing computation, and try to discover which parts of it happen to go near to where we want.”[31]

“Computation: A physical process that instantiates properties of some abstract entity.”[34]

**Definition**

**1**(vague)

**.**

“Our external physical reality is a mathematical structure.”[35]

**Definition**

**2.**

#### 3.3. Difficulty in Programming

#### 3.4. Interpretations

## 4. High-Level Structure: Hierarchies

“Computers are built up in a hierarchy of parts, with each part repeated many times over.”[39]

## 5. Wild Considerations

## 6. Summary

## Funding

## Conflicts of Interest

## References

- Minsky, M. Computation: Finite and Infinite Machines; Prentice-Hall Series in Automatic Computation; Prentice-Hall: Upper Saddle River, NJ, USA, 1967. [Google Scholar]
- Krohn, K.; Rhodes, J.L.; Tilson, B.R. The Prime Decomposition Theorem of the Algebraic Theory of Machines. In Algebraic Theory of Machines, Languages, and Semigroups; Arbib, M.A., Ed.; Academic Press: Cambridge, MA, USA, 1968; Chapter 5; pp. 81–125. [Google Scholar]
- Ginzburg, A. Algebraic Theory of Automata; Academic Press: Cambridge, MA, USA, 1968. [Google Scholar]
- Holcombe, W.M.L. Algebraic Automata Theory; Cambridge University Press: Cambridge, UK, 1982. [Google Scholar]
- Sakarovitch, J. Elements of Automata Theory; Cambridge University Press: Cambridge, UK, 2009. [Google Scholar]
- Hopcroft, J.; Motwani, R.; Ullman, J. Introduction to Automata Theory, Languages, and Computation, 3rd ed.; Pearson/Addison Wesley: Boston, MA, USA, 2007. [Google Scholar]
- Moore, C.; Mertens, S. The Nature of Computation; OUP Oxford: Oxford, UK, 2011. [Google Scholar]
- Sipser, M. Introduction to the Theory of Computation, 3rd ed.; Cengage Learning: Boston, MA, USA, 2012. [Google Scholar]
- Egri-Nagy, A. Finite Computational Structures and Implementations. In Proceedings of the Fourth International Symposium on Computing and Networking CANDAR’16, Hiroshima, Japan, 22–25 November 2016; pp. 119–125. [Google Scholar]
- Egri-Nagy, A. Finite Computational Structures and Implementations: Semigroups and Morphic Relations. Int. J. Netw. Comput.
**2017**, 7, 318–335. [Google Scholar] [CrossRef] - Toffoli, T. Reversible Computing. In Proceedings of the 7th Colloquium on Automata, Languages and Programming, Noordwijkerhout, The Netherlands, 14–18 July 1980; Springer: London, UK, 1980; pp. 632–644. [Google Scholar]
- Deutsch, D. Quantum Theory, the Church-Turing Principle and the Universal Quantum Computer. Proc. R. Soc. Lond. A Math. Phys. Eng. Sci.
**1985**, 400, 97–117. [Google Scholar] [CrossRef] - Rucker, R. The Lifebox, the Seashell, and the Soul: What Gnarly Computation Taught Me about Ultimate Reality, the Meaning of Life, and How to Be Happy; Basic Books: New York, NY, USA, 2006. [Google Scholar]
- Copeland, B.J. What is computation? Synthese
**1996**, 108, 335–359. [Google Scholar] [CrossRef] - Turing, A.M. On Computable Numbers, with an Application to the Entscheidungsproblem. Proc. Lond. Math. Soc. Second Ser.
**1936**, 42, 230–265. [Google Scholar] - Bernhardt, C. Turing’s Vision: The Birth of Computer Science; MIT Press: Cambridge, MA, USA, 2016. [Google Scholar]
- Howie, J.M. Fundamentals of Semigroup Theory; London Mathematical Society Monographs New Series; Oxford University Press: Oxford, UK, 1995; Volume 12. [Google Scholar]
- Armstrong, M. Groups and Symmetry; Springer Undergraduate Texts in Mathematics and Technology; Springer: Berlin, Germany, 1988. [Google Scholar]
- Delahaye, J.P. The Science behind Sudoku. Sci. Am.
**2006**, 294, 80–87. [Google Scholar] [CrossRef] [PubMed] - Egri-Nagy, A.; Dini, P.; Nehaniv, C.L.; Schilstra, M.J. Transformation Semigroups as Constructive Dynamical Spaces. In Digital Ecosystems: Third International Conference, OPAALS 2010, Aracuju, Sergipe, Brazil, 22–23 March 2010; Revised Selected Papers; Springer: Berlin/Heidelberg, Germany, 2010; pp. 245–265. [Google Scholar]
- Aaronson, S.; Bavarian, M.; Giusteri, G.G. Computability Theory of Closed Timelike Curves. Electronic Colloquium on Computational Complexity (ECCC)
**2016**, 23, 146. [Google Scholar] - Fortnow, L. The Golden Ticket: P, NP, and the Search for the Impossible; Princeton University Press: Princeton, NJ, USA, 2013. [Google Scholar]
- Smolin, L. Time Reborn: From the Crisis in Physics to the Future of the Universe; Houghton Mifflin Harcourt: Boston, MA, USA, 2013. [Google Scholar]
- Barbour, J. The End of Time: The Next Revolution in Physics; Oxford University Press: Oxford, MI, USA, 2001. [Google Scholar]
- Augusta Ada Lovelace, L.F.M. Sketch of The Analytical Engine Invented by Charles Babbage with notes by the translator. Sci. Mem.
**1843**, 3, 666–690. [Google Scholar] - Piccinini, G. Computation in Physical Systems. In The Stanford Encyclopedia of Philosophy, Summer 2017 ed.; Zalta, E.N., Ed.; Metaphysics Research Lab, Stanford University: Stanford, CA, USA, 2017. [Google Scholar]
- Chalmers, D.J. On Implementing a Computation. Minds Mach.
**1994**, 4, 391–402. [Google Scholar] [CrossRef] - Chalmers, D.J. Does a rock implement every finite-state automaton? Synthese
**1996**, 108, 309–333. [Google Scholar] [CrossRef] - Barrow, J. Pi in the Sky: Counting, Thinking, and Being; Clarendon Press: Oxford, UK, 1992. [Google Scholar]
- Egan, G. Luminous. Asimov’s Science Fiction, September 1995; 20–56. [Google Scholar]
- Toffoli, T. Physics and computation. Int. J. Theor. Phys.
**1982**, 21, 165–175. [Google Scholar] [CrossRef] - Zenil, H. Introducing the Computable Universe. In A Computable Universe: Understanding and Exploring Nature as Computation; Zenil, H., Ed.; World Scientific: Singapore, 2012; pp. 1–20. [Google Scholar]
- Deutsch, D. The Fabric of Reality: The Science of Parallel Universes–and Its Implications; Penguin Publishing Group: London, UK, 1998. [Google Scholar]
- Deutsch, D. The Beginning of Infinity: Explanations That Transform the World; Penguin Publishing Group: London, UK, 2011. [Google Scholar]
- Tegmark, M. The Mathematical Universe. Found. Phys.
**2008**, 38, 101–150. [Google Scholar] [CrossRef] - Tegmark, M. Our Mathematical Universe: My Quest for the Ultimate Nature of Reality; Alfred A. Knopf: New York, NY, USA, 2014. [Google Scholar]
- Sorva, J. Notional Machines and Introductory Programming Education. ACM Trans. Comput. Educ.
**2013**, 13, 8:1–8:31. [Google Scholar] [CrossRef] - Frank, M.P. Throwing computing into reverse. IEEE Spectrum
**2017**, 54, 32–37. [Google Scholar] [CrossRef] - Hillis, D. The Pattern On The Stone; Basic Books: New York, NY, USA, 1998. [Google Scholar]
- Rhodes, J.; Nehaniv, C.; Hirsch, M. Applications of Automata Theory and Algebra: Via the Mathematical Theory of Complexity to Biology, Physics, Psychology, Philosophy, and Games; World Scientific: Singapore, 2009. [Google Scholar]
- Nehaniv, C.L. Algebraic Models for Understanding: Coordinate Systems and Cognitive Empowerment. In Proceedings of the Second International Conference on Cognitive Technology: Humanizing the Information Age, Aizu-Wakamatsu City, Japan, 25–28 August 1997; IEEE Computer Society Press: Washington, DC, USA, 1997; pp. 147–162. [Google Scholar]
- Nehaniv, C.L.; Rhodes, J.L. On the Manner in which Biological Complexity May Grow. In Mathematical and Computational Biology, Lectures on Mathematics in the Life Sciences; American Mathematical Society: Providence, RI, USA, 1999; Volume 26, pp. 93–102. [Google Scholar]
- Shagrir, O. Computation, Implementation, Cognition. Minds Mach.
**2012**, 22, 137–148. [Google Scholar] [CrossRef]

**Figure 1.**Composition (multiplication) tables of semigroups (computational structures). The flip-flop is the semigroup of a 1-bit memory device (r—reading the content, ${s}_{0},{s}_{1}$—storing bit 0 and bit 1 destructively). ${\mathbb{Z}}_{3}$ is a modulo-3 counter, i.e., an odometer with only three possible values.

**Figure 2.**The maps $0\mapsto 2$, $1\mapsto 3$ define an embedding (an isomorphism to a subsemigroup of the target semigroup) of the cyclic group into the full transformation semigroup, $n=2$.

**Figure 3.**Schematic view of a morphism. S is the source semigroup, in which getting from x to $xy$ is a slow or expensive operation. Mapping the computation over to the target semigroup T by $\phi $ the computation of $\phi \left(xy\right)$ is easy, and we can map the result back. The source can be a long pencil and paper arithmetic computation, while the target can be an electronic calculator.

© 2018 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Egri-Nagy, A. The Algebraic View of Computation: Implementation, Interpretation and Time. *Philosophies* **2018**, *3*, 15.
https://doi.org/10.3390/philosophies3020015

**AMA Style**

Egri-Nagy A. The Algebraic View of Computation: Implementation, Interpretation and Time. *Philosophies*. 2018; 3(2):15.
https://doi.org/10.3390/philosophies3020015

**Chicago/Turabian Style**

Egri-Nagy, Attila. 2018. "The Algebraic View of Computation: Implementation, Interpretation and Time" *Philosophies* 3, no. 2: 15.
https://doi.org/10.3390/philosophies3020015