Skip to main content

Random Self-modifiable Computation

  • Conference paper
  • First Online:
Advances in Software Engineering, Education, and e-Learning

Abstract

A new computational model, called the ex-machine, executes standard instructions, meta instructions, and random instructions. Standard instructions behave similarly to machine instructions in a digital computer. Meta instructions self-modify the ex-machine’s program during its execution. We construct a countable set of ex-machines; each can compute a Turing incomputable language, whenever the quantum random measurements in the random instructions behave like unbiased Bernoulli trials. In 1936, Turing posed the halting problem and proved that this problem is unsolvable for Turing machines. Let \(\{({M}_i, T_i): i \in \mathbb {N} \}\) be a Turing computable enumeration of all Turing machines M i and finite tapes T i. Does there exist an ex-machine \(\mathcal {X}\) that has at least one evolutionary path \(\mathcal {X} \rightarrow \mathcal {X}_1 \rightarrow \mathcal {X}_2 \rightarrow \dots \rightarrow \mathcal {X}_m\), so at the mth stage, the ex-machine \(\mathcal {X}_m\) can correctly determine for 0 ≤ i ≤ m whether M i’s execution on tape T i eventually halts? We construct an ex-machine Z(x) that has one such evolutionary path; at stage m, Z(x) has used a finite amount of computational resources. The existence of this path suggests that David Hilbert (Nachrichten von der Gesellschaft der Wissenschaften zu Göttingen, Mathematische-Physikalische Klasse. 3:253–297, 1900) may not have been misguided to propose that mathematicians search for finite methods to help construct proofs. Our refinement is to not use a program that behaves according to a fixed set of mechanical rules. We must pursue computation that exploits randomness and self-modification so that the complexity of the program can increase during computation.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 139.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 179.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 249.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Change history

  • 12 January 2022

    The DOI in the reference 12 was published incorrectly and has been corrected to read as mentioned below:

Notes

  1. 1.

    The conception of the Turing machine was motivated by Hilbert’s goal to find a general method for constructing proofs of mathematical theorems [15].

  2. 2.

    Each Turing machine is a discrete autonomous dynamical system in \(\mathbb {C}\). See the Appendix.

  3. 3.

    Q and A represent the ex-machine states and alphabet, respectively.

  4. 4.

    Chapter 7 of [19] provides explicit details of encoding quintuples with a particular universal Turing machine. Alphabet \(\mathfrak {A}\) was selected to be compatible with this encoding. A careful study of chapter 7 provides a clear path of how \({M}_{\mathfrak {E}}\)’s instructions can be specified to implement \(\mathfrak {E}_a\).

References

  1. H. Abelson, G.J. Sussman, J. Sussman, Structure and Interpretation of Computer Programs, 2nd edn. (MIT Press, Cambridge, 1996)

    MATH  Google Scholar 

  2. Y. Bertot, P. Castéran, Interactive Theorem Proving & Program Development (Springer, Berlin, 2004)

    Book  Google Scholar 

  3. M. Blum, On the size of machines. Inf. Control 11, 257–265 (1967)

    Article  MathSciNet  Google Scholar 

  4. C. Calude, Information and Randomness (Springer, Berlin, 2002), pp. 362–363

    Book  Google Scholar 

  5. G. Chaitin. Information, Randomness, and Incompleteness (World Scientific, Singapore, 1987)

    Book  Google Scholar 

  6. T. Coquand, G. Huet, Calculus of constructions. Inf. Comput. 76, 95–120 (1988)

    Article  MathSciNet  Google Scholar 

  7. K. de Leeuw, E.F. Moore, C.E. Shannon, N. Shapiro, Computability by probabilistic machines, in ed. by Shannon & McCarthy Automata Studies (Princeton University Press, Princeton, 1956), pp. 183–212

    Google Scholar 

  8. G. Etesi, I. Nemeti, Non-Turing computations via Malament-Hogarth spacetimes. Int. J. Theoret. Phys. 41(2), 341–370 (2002)

    Article  Google Scholar 

  9. W. Feller, Introduction to Probability Theory and Its Applications, vol. 1 (Wiley, Hoboken, 1957), vol. 2 (1966)

    Google Scholar 

  10. M.S. Fiske, Non-autonomous Dynamical Systems Applicable to Neural Computation (Northwestern University, Evanston, 1996)

    Google Scholar 

  11. M.S. Fiske, Turing incomputable computation. Turing-100. The Alan Turing Centenary. EasyChair 10, 66–91 (2012). https://doi.org/10.29007/x5g2

  12. M.S. Fiske, Quantum random self-modifiable computation. Logic Colloquium 2019. Prague, Czech Republic, August 11–16. Bull. Symb. Logic. 25(4), 510–511 (2019). https://doi.org/10.1017/bsl.2019.56

  13. H. Godfroy, J.Y. Marion, Abstract Self Modifying Machines (HAL CCSD, Lyon, 2016)

    Google Scholar 

  14. M. Herrero-Collantes, J.C. Garcia-Escartin, Quantum random number generators. Rev. Modern Phys. 89(1), 015004, (2017). https://arxiv.org/abs/1604.03304

  15. D. Hilbert, Mathematische probleme. Nachrichten von der Gesellschaft der Wissenschaften zu Göttingen, Mathematische-Physikalische Klasse 3, 253–297 (1900)

    Google Scholar 

  16. M. Hogarth, Non-turing computers and Non-turing computability, in Proceedings of the Biennial Meeting of the Philosophy of Science Assoc., vol. 1 (University of Chicago, Chicago, 1994), pp. 126–138

    Google Scholar 

  17. T. Kieu, Quantum algorithm for Hilbert’s tenth problem. Int. J. Theoret. Phys. 42, pp. 1461–1478 (2003)

    Article  MathSciNet  Google Scholar 

  18. H.R. Lewis, C. Papadimitriou, Elements of the Theory of Computation (Prentice-Hall, Upper Saddle River, 1981)

    MATH  Google Scholar 

  19. M. Minsky, Computation: Finite and Infinite Machines (Prentice-Hall, Upper Saddle River, 1967), pp. 132–155

    MATH  Google Scholar 

  20. B. Pierce, Types and Programming Languages (MIT Press, Cambridge, 2002), pp. 99–100

    Google Scholar 

  21. H. Rogers. Theory of Recursive Functions and Effective Computability (MIT Press, Cambridge, 1987)

    Google Scholar 

  22. H.L. Royden, Real Analysis (Prentice-Hall, Upper Saddle River, 1988)

    MATH  Google Scholar 

  23. A.M. Turing, On computable numbers, with an application to the Entscheidungsproblem. Proc. London Math. Soc. Series 2. 42 (3, 4), 230–265 (1936)

    Google Scholar 

  24. A.M. Turing, System of logic based on ordinals. Proc. London Math. Soc. Series 2. 45, 161–228 (1939)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michael Stephen Fiske .

Editor information

Editors and Affiliations

Appendix: A Turing Machine Is an Autonomous Dynamical System

Appendix: A Turing Machine Is an Autonomous Dynamical System

Fix a Turing machine M. Transformation ϕ maps a machine configuration to a point in the complex plane \(\mathbb {C}\); ϕ also maps each of M’s instructions to a finite number |A| of unique affine functions each with a distinct domain. These affine functions can be extended to a function F on a bounded region W in \(\mathbb {C}\), containing these domains and a disjoint bounded set, called the halting attractor. Via ϕ, one computational step of M corresponds to one iteration of the discrete autonomous dynamical system (F, W).

Let machine states Q = {q 1, …, q m}. Let alphabet A = {a 1, …, a n}, where a 1 is the blank symbol. Halt state h is a special state that is not in Q. Function η : Q × A →Q ∪{h}× A ×{−1, +1} is the machine M’s program. A single instruction is η(q, a) = (r, b, x), where q ∈Q, r ∈Q ∪{h}, a, b ∈ A, and x ∈{−1, +1}. Set B = |A| + |Q| + 1. Define symbol value function \(\nu : \{h\} \cup \mathsf {Q} \cup A \rightarrow \mathbb {N}\) as ν(a 1) = 0, …, ν(a i) = i − 1, …, ν(a n) = |A|− 1, ν(h) = |A|, ν(q 1) = |A| + 1, …, ν(q i) = |A| + i, …, ν(q m) = |A| + |Q|.

Fig. 2
figure 2

Machine configuration (q, k, T) before executing a standard instruction

\(T: \mathbb {Z} \rightarrow A\) is the tape and is finite. T k is the alphabet symbol in tape square k. Machine configuration (q, k, T) lies in \(\mathsf {Q} \times \mathbb {Z} \times A^{\mathbb {Z}}\) and maps to the complex number:

(1)

In Eq. 1, the infinite series in both the real and imaginary parts sums to rational numbers because the initial tape squares contain a finite number of non-blank symbols.

Next, we define how ϕ maps each instruction in program η to a finite set of affine functions. When instruction η(q, T k) = (r, b, +1) executes, state q moves to state r, symbol b replaces T k on tape square k, and the head moves to tape square k + 1.

The right affine functions corresponding to instruction η(q, T k) = (r, b, +1) are of the form f(x + yi) =  f 1(x) + f 2(y) i, where f 1(x) = |A|x + m and \(f_2(y) = \frac {1}{|A|} y + n\). Using Eq. 1 and Fig. 3 to solve for m and n, ϕ maps instruction η(q, T k) = (r, α, +1) to the affine function f(x + yi) =  f 1(x) + f 2(y) i, where

$$\displaystyle \begin{aligned} f_1(x) = |A|x + (|A|-1) \nu(T_{k+1}) - |A|{}^2 \nu(T_k) \end{aligned} $$
(2)
$$\displaystyle \begin{aligned} f_2(y) = \frac{1}{|A|} y + B \nu(r) + \nu(b) - \frac{B}{|A|} \nu(q). \end{aligned} $$
(3)
Fig. 3
figure 3

Machine configuration after executing instruction η(q, T k) = (r, b, +1)

For each of the |A| distinct values v(T k+1) in f 1, f is a different affine function. Thus, there are |A| distinct affine functions that correspond to instruction η(q, T k) = (r, b, +1). The domain of each right affine function is \(U_{j,k} = \big {\{} x + yi \in \mathbb {C}: j \le x < j+1\) and k ≤ y < k + |A|}, where j = |A|ν(T k) + ν(T k+1) and k = (q).

When η(q, T k) = (r, b, −1) executes, state q moves to state r, symbol b replaces T k on square k, and the head moves to tape square k − 1.

From Eq. 1 and Fig. 4, ϕ maps instruction η(q, T k) = (r, b, −1) to affine function g(x + yi) =  g 1(x) + g 2(y) i, where

$$\displaystyle \begin{aligned} g_1(x) = \frac{1}{|A|}x + |A| \nu(T_{k-1}) + \nu(b) - \nu(T_k) \end{aligned} $$
(4)
$$\displaystyle \begin{aligned} g_2(y) = |A|y + B \nu(r) - |A| B \nu(q) - |A| \nu(T_{k-1}). \end{aligned} $$
(5)
Fig. 4
figure 4

Machine configuration after executing instruction η(q, T k) = (r, b, −1)

For each of the |A| distinct values v(T k−1) in g 1 and g 2, g is a different affine function. Thus, there are |A| distinct left affine functions that correspond to instruction η(q, T k) = (r, b, −1). The domain of each left affine function is \(V_{j,k} = \big {\{} x + yi \in \mathbb {C}: j \le x < j + |A| \) and k ≤ y < k + 1}, where j = |A|ν(T k) and k = (q) + ν(T k−1).

Define halting attractor \(H = \big {\{} x + yi \in \mathbb {C}:\) 0 ≤ x < |A|2 and B|A|≤ y ≤ (B + 1)|A|}. The points in \(\mathbb {C}\) that correspond to halting configurations (h, k, T) are called halting points. Using elementary algebra and simple geometric series calculations, one can verify that the halting points are a subset of H. Define halting map \(\mathfrak {h}: H \rightarrow H\), where \(\mathfrak {h}(x + yi) = x + yi\) on H. Every point in the halting attractor is a fixed point of \(\mathfrak {h}\). Moreover, the intersection of each affine function’s domain and H is empty. This implies that \(\mathfrak {h}\) and all left and right affine functions corresponding to η’s instructions can be extended to a function F on domain W that contains H and all domains U j,k and V j,k.

Overall, the ϕ correspondence transforms Turing’s halting problem to a discrete autonomous dynamical systems problem in \(\mathbb {C}\). If machine configuration (q, k, T) halts after n computational steps, then the orbit of ϕ(q, k, T) exits one of the domains U j,k or V j,k on the nth iteration and enters the halting attractor H. If machine configuration (r, j, S) never halts, then the orbit of ϕ(r, j, S) never reaches the halting attractor.

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Fiske, M.S. (2021). Random Self-modifiable Computation. In: Arabnia, H.R., Deligiannidis, L., Tinetti, F.G., Tran, QN. (eds) Advances in Software Engineering, Education, and e-Learning. Transactions on Computational Science and Computational Intelligence. Springer, Cham. https://doi.org/10.1007/978-3-030-70873-3_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-70873-3_27

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-70872-6

  • Online ISBN: 978-3-030-70873-3

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics