From fa4a53e9f165b393f70fca9f4a83b785bc999e1a Mon Sep 17 00:00:00 2001 From: Thomas Walker Lynch Date: Thu, 9 Jul 2026 15:34:24 +0000 Subject: [PATCH] . --- document/TM-2026.html | 127 +++++++++++++++--------------------------- 1 file changed, 44 insertions(+), 83 deletions(-) diff --git a/document/TM-2026.html b/document/TM-2026.html index 5328121..0d189dd 100644 --- a/document/TM-2026.html +++ b/document/TM-2026.html @@ -896,7 +896,7 @@ Russell's set formulation, R, can be analyzed to determine that it would not halt if it were run. We still keep it as a second order object, and have even given it a name, R. However, this begs the question, are there machines that cannot even be analyzed in the second order to ascertain if they would return a result in first order analysis, i.e., when they are run? If Gödel has a say here, a person would wager that such machines exist. But then, is there an option for analysis in the third order? Is Turing's halting proof a third order analysis as it reasons about running the second order analyzer? Or is it merely a recursive application of second order analysis?

- Computational Analysis +Computational Analysis

Definition

@@ -957,7 +957,7 @@

- Suppose our goal is to subtract 3 from 5 in the second order. Consider a Turing Machine representation named five that outputs the number 5, i.e., it prints to the tape, 'sssss', using unary notation. Let us assume that the tape is initially empty and that the empty symbol '⊔' terminates the string. To preserve the code for second-order analysis, we define the program's Abstract Syntax Tree (AST) as a quoted progn block. This block can contain any native Lisp control structures, though for this generator it is a simple sequence: + Suppose our goal is to subtract 3 from 5 in the second order. Consider a Turing Machine representation named five that outputs the number 5, i.e., it prints to the tape, 'sssss', using unary notation. Let us assume that the tape is initially empty and that the empty symbol '⊔' terminates the string. To preserve the code for second order analysis, we define the program's Abstract Syntax Tree (AST) as a quoted progn block. This block can contain any native Lisp control structures, though for this generator it is a simple sequence:

@@ -1106,7 +1106,7 @@ ;; (write s) (step)) -

This technique of composing Turing Machine programs in the presence of simplification is closely related to that of symbol computation and expression simplification that we find in math tools such as Mathematica. We can imagine our Turing Machines as functions with names, and then symbolic computation leave them unevaluated as here. Then the the Mathematica Simplify is the compiler optimization simplifier as above. A difference in these two systems is that of the functions being reduced to Turing Machine head and tape transport unit commands.

+

This technique of composing Turing Machine programs in the presence of simplification is closely related to that of symbol computation and expression simplification that we find in math tools such as Mathematica. We can imagine our Turing Machines as functions with names, and then symbolic computation leaves them unevaluated as here. Then the Mathematica Simplify is the compiler optimization simplifier as above. A difference in these two systems is that of the functions being reduced to Turing Machine head and tape transport unit commands.

The multiplicative inverse of the additive identity

@@ -1115,7 +1115,7 @@

- The IEEE 754 floating point standard includes error algebra tags. These are explored in depth by Popova, Evgenija D. "On a Formally Correct Implementation of IEEE Computer Arithmetic." Journal of Universal Computer Science 1, no. 7 (1995): 560-569. This is a form of second order arithmetic, because each of the error tags is standing in for a machine that did not complete. When a computation fails to result in a first order object, this becomes a gateway for replacing the result with a second order object. + The IEEE 754 floating point standard includes error algebra tags. These are explored in depth by Popova, Evgenija D. "On a Formally Correct Implementation of IEEE Computer Arithmetic." Journal of Universal Computer Science 1, no. 7 (1995): 560 569. This is a form of second order arithmetic, because each of the error tags is standing in for a machine that did not complete. When a computation fails to result in a first order object, this becomes a gateway for replacing the result with a second order object.

@@ -1165,7 +1165,7 @@ \Delta_i = f(t_{i+1}) - f(t_i). While the backwards first difference is \Delta_i = f(t_i) - f(t_{i-1}). - If 'forward' or 'backwards' is not specified, then the difference is taken to be 'forward'. Hence, extending a function is identical to adding the first difference. Thus a sequence of function values, implies a sequence of first differences. + If 'forward' or 'backwards' is not specified, then the difference is taken to be 'forward'. Hence, extending a function is identical to adding the first difference. Thus a sequence of function values implies a sequence of first differences.

@@ -1224,7 +1224,7 @@

- In order to design for indefinite extension, the Turing Machine tape must retain the function value alongside with its forward differences. Because the second difference is constant higher order differences are all zero. Hence the tape requires a three component vector to hold the differences. + In order to design for indefinite extension, the Turing Machine tape must retain the function value alongside with its forward differences. Because the second difference is constant higher order differences are all zero. Hence the tape requires a three component vector to hold the differences.

@@ -1315,78 +1315,6 @@ Taking successive finite differences reduces the degree of the polynomial by exactly one at each step. Consequently, the \omegath difference evaluates to a constant, and the next difference evaluates to exactly zero.

- - -

Lemma: A D_0 vector of finite extent \omega generates a polynomial function of degree \omega

- -

- If an initial difference vector D_0 has an extent of \omega, the sequence of function values generated by the machine corresponds to a polynomial of exactly degree \omega. A person can demonstrate this by algebraically recovering the polynomial constants, a_i, directly from the initial tape components, D_{0, i}. -

- -

- Consider an extent of \omega = 0, forming a polynomial of degree 0, f(t) = a_0. Evaluating at t = 0 yields f(0) = a_0. Because the machine's initial value is D_{0,0}, a person establishes a_0 = D_{0,0}. -

- -

- When a person extends the extent to \omega = 1, the next term is added to form f(t) = a_0 + a_1 t. The first forward difference at t = 0 is D_{0,1} = f(1) - f(0) = (a_0 + a_1) - a_0 = a_1. Therefore, a_1 = D_{0,1}. Note that the addition of the linear term did not change the evaluation at t = 0; the a_0 constant remains firmly anchored to D_{0,0}. -

- -

- Extending to \omega = 2, the polynomial becomes f(t) = a_0 + a_1 t + a_2 t^2. The second difference at t = 0 is calculated as D_{0,2} = f(2) - 2f(1) + f(0). Substituting the polynomial yields D_{0,2} = (a_0 + 2a_1 + 4a_2) - 2(a_0 + a_1 + a_2) + a_0 = 2a_2. Thus, a person recovers a_2 = D_{0,2} / 2. The lower coefficient then adjusts to a_1 = D_{0,1} - a_2. -

- -

- Continuing to \omega = 3, the polynomial is f(t) = a_0 + a_1 t + a_2 t^2 + a_3 t^3. Evaluating the third difference D_{0,3} isolates the highest order term, yielding D_{0,3} = 6a_3. This allows immediate recovery of the highest constant: a_3 = D_{0,3} / 6. -

- -

- Once a_3 is known, the shifting nature of the lower order constants becomes apparent through back substitution. The second difference equation expands to D_{0,2} = 2a_2 + 6a_3. Substituting the known a_3 allows recovery of a_2 = (D_{0,2} - 6a_3) / 2. Similarly, the first difference equation expands to D_{0,1} = a_1 + a_2 + a_3, which resolves to a_1 = D_{0,1} - a_2 - a_3. Through all of this shifting, a_0 = D_{0,0} remains entirely unperturbed. -

- -

- To observe the formal mechanics of this progression, a person can array these relationships into a matrix equation mapping the polynomial constants, a_i, to the initial tape differences, D_{0,n}. The coefficients of this transformation are defined by the Stirling numbers of the second kind, denoted S(i,n): -

- - - \begin{bmatrix} D_{0,0} \\ D_{0,1} \\ D_{0,2} \\ \vdots \\ D_{0,\omega} \end{bmatrix} = - \begin{bmatrix} - 0! S(0,0) & 0! S(1,0) & 0! S(2,0) & \cdots & 0! S(\omega,0) \\ - 0 & 1! S(1,1) & 1! S(2,1) & \cdots & 1! S(\omega,1) \\ - 0 & 0 & 2! S(2,2) & \cdots & 2! S(\omega,2) \\ - \vdots & \vdots & \vdots & \ddots & \vdots \\ - 0 & 0 & 0 & \cdots & \omega! S(\omega,\omega) - \end{bmatrix} - \begin{bmatrix} a_0 \\ a_1 \\ a_2 \\ \vdots \\ a_\omega \end{bmatrix} - - -

- Because each successive forward difference operator annihilates the lowest power of t, the resulting matrix is strictly upper triangular. For any extent \omega, the final row simplifies to D_{0,\omega} = \omega! a_\omega. Because an initial tape of extent \omega strictly dictates that D_{0,\omega} is nonzero, a_\omega is guaranteed to be nonzero. -

- -

- The main diagonal contains strictly non-zero factorials, ensuring the matrix is invertible. By inverting this matrix, a person replaces the cascading back substitution with a direct, closed-form equation to recover any constant a_i. The inversion utilizes the signed Stirling numbers of the first kind, denoted s(n,i) (see the Appendix on Stirling numbers). -

- -

- a_i = \sum_{n=i}^{\omega} \frac{s(n,i)}{n!} D_{0,n} -

- -

- Thus, extending this procedure \omega times definitively recovers the constants for exactly a polynomial of degree \omega. -

- -

- This mechanical recovery of standard polynomial constants is completely analogous to Newton's interpolation formula Ibid.. Instead of resolving the standard constants a_i through an upper triangular matrix, a person can construct the polynomial directly by treating the initial tape components as the exact coefficients for a basis of binomial terms: -

- -

- f(t) = \sum_{n=0}^{\omega} D_{0, n} \binom{t}{n} -

- -

- Because the nth binomial coefficient expands into a polynomial of exactly degree n, and the summation is bounded by the finite extent \omega where D_{0, \omega} is definitively nonzero, the constructed function f(t) is guaranteed to be a polynomial of degree \omega. -

-

Lemma: A D_0 vector of finite extent \omega generates a polynomial function of degree \omega

@@ -1453,7 +1381,39 @@

- A pattern emerges. Because each successive forward difference operator annihilates the lowest power of t, the resulting algebraic system is upper triangular. For any extent \omega, the \omegath difference equation reduces to D_{0,\omega} = \omega! a_\omega. This structural guarantee permits a person to reliably recover a_\omega = D_{0,\omega} / \omega!. Because an initial tape of extent \omega dictates that D_{0,\omega} is nonzero, a_\omega is guaranteed to be nonzero. All subsequent lower order constants are then systematically resolved through cascading back substitution. Thus, extending this procedure \omega times definitively recovers the constants for exactly a polynomial of degree \omega. + A pattern emerges. Because each successive forward difference operator annihilates the lowest power of t, the resulting algebraic system is upper triangular. For any extent \omega, the \omegath difference equation reduces to D_{0,\omega} = \omega! a_\omega. This structural guarantee permits a person to reliably recover a_\omega = D_{0,\omega} / \omega!. Because an initial tape of extent \omega dictates that D_{0,\omega} is nonzero, a_\omega is guaranteed to be nonzero. All subsequent lower order constants are then systematically resolved through cascading back substitution. +

+ +

+ To observe the formal mechanics of this progression, a person can alternatively array these relationships into a matrix equation mapping the polynomial constants, a_i, to the initial tape differences, D_{0,n}. The coefficients of this transformation are defined by the Stirling numbers of the second kind, denoted S(i,n): +

+ + + \begin{bmatrix} D_{0,0} \\ D_{0,1} \\ D_{0,2} \\ \vdots \\ D_{0,\omega} \end{bmatrix} = + \begin{bmatrix} + 0! S(0,0) & 0! S(1,0) & 0! S(2,0) & \cdots & 0! S(\omega,0) \\ + 0 & 1! S(1,1) & 1! S(2,1) & \cdots & 1! S(\omega,1) \\ + 0 & 0 & 2! S(2,2) & \cdots & 2! S(\omega,2) \\ + \vdots & \vdots & \vdots & \ddots & \vdots \\ + 0 & 0 & 0 & \cdots & \omega! S(\omega,\omega) + \end{bmatrix} + \begin{bmatrix} a_0 \\ a_1 \\ a_2 \\ \vdots \\ a_\omega \end{bmatrix} + + +

+ For any extent \omega, the final row of this strictly upper triangular matrix again simplifies to D_{0,\omega} = \omega! a_\omega. +

+ +

+ The main diagonal contains strictly non zero factorials, ensuring the matrix is invertible. By inverting this matrix, a person replaces the cascading back substitution with a direct, closed form equation to recover any constant a_i. The inversion utilizes the signed Stirling numbers of the first kind, denoted s(n,i) (see the Appendix on Stirling numbers). +

+ +

+ a_i = \sum_{n=i}^{\omega} \frac{s(n,i)}{n!} D_{0,n} +

+ +

+ Thus, extending this procedure \omega times definitively recovers the constants for exactly a polynomial of degree \omega.

@@ -1537,9 +1497,9 @@

Say for example, we have a machine called fizz that adds 3 to the input on the tape, and another machine called buzz that adds 5 to the input on the tape, and we wanted to compose the two machines. We would have to define what a call to the resultant machine means to the machines in composition.

-

If one call to the resultant machine makes the equivalent of one call to the fizz, and one to buzz, the the resultant machine can be simplified to add 8 to its input tape each time it is called. In contrast if one call the resultant machine makes the equivalent of 5 calls to fizz, and 3 calls to buzz, then the resultant machine reduces to adding 30 to the input tape per call. The two machines are very different.

+

If one call to the resultant machine makes the equivalent of one call to the fizz, and one to buzz, the the resultant machine can be simplified to add 8 to its input tape each time it is called. In contrast if one call to the resultant machine makes the equivalent of 5 calls to fizz, and 3 calls to buzz, then the resultant machine reduces to adding 30 to the input tape per call. The two machines are very different.

-

Performing operations on with recurrence functions requires integrating a call algebra in addition to integrating the machines. Often this is handled by consider the machines being composed to be subroutines, and the outer controller than explicitly calls them. The call algebra can then be dynamic depending on the input. Calls can be skipped due to being inside conditionals, or performed an arbitrary number of times in loops. Though simple control structures that are static are more math like, and are more likely to be more effected by optimizations (simplifications).

+

Performing operations with recurrence functions requires integrating a call algebra in addition to integrating the machines. Often this is handled by considering the machines being composed to be subroutines, and the outer controller than explicitly calls them. The call algebra can then be dynamic depending on the input. Calls can be skipped due to being inside conditionals, or performed an arbitrary number of times in loops. Though simple control structures that are static are more math like, and are more likely to be more affected by optimizations (simplifications).

A pole and zero cancellation

@@ -1640,7 +1600,7 @@

- The quotient machine, (divide f(5) g(5)), is no more representative of the value we expected here, than was (divide 0 0). However, as we have the whole program, we could pass it to a L'Hôpital evaluator and get a value back. But I am wondering if we can't design function extension form that extends to the value and beyond, as most apparetly there is a value to extend to. + The quotient machine, (divide f(5) g(5)), is no more representative of the value we expected here, than was (divide 0 0). However, as we have the whole program, we could pass it to a L'Hôpital evaluator and get a value back. But I am wondering if we can't design function extension form that extends to the value and beyond, as most apparently there is a value to extend to.

@@ -1688,7 +1648,7 @@

The resulting D_0 vector for the quotient is:

- D_{0} = \left[ \frac{31}{15}, \frac{13}{30}, \frac{8}{45}, \frac{10}{100}, \frac{1}{15}, \frac{32\ln(2)}{3}, 32/3, 64/3, 128/3, 256/3 \right] + D_{0} = \left[ \frac{31}{15}, \frac{13}{30}, \frac{8}{45}, \frac{1}{10}, \frac{1}{15}, T - \frac{661}{90}, -6T + \frac{222}{5}, 21T - \frac{4657}{30}, -56T + \frac{6211}{15}, 126T - \frac{11529}{10} \right] Figure D table for h(t) @@ -1766,6 +1726,7 @@ + Address

Unary Representation address

-- 2.20.1