From: Thomas Walker Lynch Date: Wed, 17 Jun 2026 14:10:03 +0000 (+0000) Subject: doc checkpoint X-Git-Url: https://git.reasoningtechnology.com/%27%20%20%20resolved_path%20%20%20%27?a=commitdiff_plain;h=8425a46212fce9c93082d1db3d0d7d8d540bfda2;p=TM-2026 doc checkpoint --- diff --git a/document/TM-2026.html b/document/TM-2026.html index 6301e2f..b1f8adc 100644 --- a/document/TM-2026.html +++ b/document/TM-2026.html @@ -24,12 +24,12 @@

Introduction

- In 1893 Gottlob Frege published an axiomatic construction of mathematics from set theory. Frege's grand objective was somethign he called Logicism, the philosophical thesis that all of mathematics can be derived entirely from pure logic. To achieve this, his specific machinery relied upon unrestricted set comprehension, formalized as Basic Law V . + In 1893 Gottlob Frege published an axiomatic construction of mathematics from set theory. Frege's grand objective was somethign he called Logicism, the philosophical thesis that all of mathematics can be derived entirely from pure logic. To achieve this, his specific machinery relied upon unrestricted set comprehension, formalized as Basic Law V .

At a conference in Paris in 1900 David Hilbert presented a list of pressing unsolved problems in mathematics. - Second on his list was "The Compatibility of the Arithmetical Axioms," Hilbert challenged mathematicians to find a means to demonstrate that "a finite number of logical steps based upon them [axioms] can never lead to contradictory results" . + Second on his list was "The Compatibility of the Arithmetical Axioms," Hilbert challenged mathematicians to find a means to demonstrate that "a finite number of logical steps based upon them [axioms] can never lead to contradictory results" .

@@ -54,11 +54,11 @@

- In April 1936, Alonzo Church leveraged Gödel's foundational papers to directly answer the Entscheidungsproblem . Working independently, Alan Turing had arrived at his own mechanical solution; however, upon seeing Church's April publication, Turing rushed to submit his manuscript on 28 May 1936, appending a proof that his mechanical architecture was mathematically equivalent to Church's lambda calculus . As Hilbert and Ackermann concede in the 1938 second edition of their textbook, Church's results demonstrated that "the quest for a general solution of the decision problem must be regarded as hopeless" . By giving the "somewhat vague intuitive concept of recursion a certain precise formalization," Church proved the "non-existence of such a recursive procedure" that could mechanically yield a value of truth or falsehood for every individual formula . With this proof, Church established the absolute logical boundary of formal mathematics. + In April 1936, Alonzo Church leveraged Gödel's foundational papers to directly answer the Entscheidungsproblem . Working independently, Alan Turing had arrived at his own mechanical solution and upon seeing Church's April publication, Turing rushed to submit his manuscript on 28 May 1936, appending a proof that his mechanical architecture was mathematically equivalent to Church's lambda calculus . As Hilbert and Ackermann concede in the 1938 second edition of their textbook, Church's results demonstrated that "the quest for a general solution of the decision problem must be regarded as hopeless" . By giving the "somewhat vague intuitive concept of recursion a certain precise formalization," Church proved the "non-existence of such a recursive procedure" that could mechanically yield a value of truth or falsehood for every individual formula . With this proof, Church established the absolute logical boundary of formal mathematics.

- Working independently in the spring of 1936, Alan Turing introduced the Turing Machine abstraction to set mechanical limits on the Entscheidungsproblem. This theoretical device was used to prove that no primary 'analyzer' program can universally decide whether a second 'studied' program will halt when it is run . An answer to this halting problem (specifically asserting "The studied machine halts" or "The studied machine does not halt") would indeed be a statement in first-order logic. Thus, by showing no analyzer can universally make such a determination without entering an infinite recursion, Turing proved that no decider could exist for the Entscheidungsproblem. It is at this exact historical and mechanical boundary that the classical limits of machine computation were cemented. + Working independently in the spring of 1936, Alan Turing introduced the Turing Machine abstraction to set mechanical limits on the Entscheidungsproblem. This theoretical device was used to prove that no primary 'analyzer' program can universally decide whether a second 'studied' program will halt when it is run . An answer to this halting problem (specifically asserting "The studied machine halts" or "The studied machine does not halt") would indeed be a statement in first-order logic. Thus, by showing no analyzer can universally make such a determination without entering an infinite recursion, Turing proved that no decider could exist for the Entscheidungsproblem.

@@ -79,7 +79,7 @@

In reading Alan Turing's 1936 paper, it is striking how modern the text feels, specifically because he discusses algorithms, stored programs, and the mechanical limits of computation. - While his contemporaries largely built purely mathematical and logical frameworks, Turing uniquely tied computation theory directly to the abstraction of machines executing stored programs. Because physical hardware capable of executing stored memory programs had not yet been invented, this explicit architectural grounding makes Turing's work remarkably prescient. Still, Turing could not formally connect the Turing Machine to modern architectures, simply because those architectures did not yet exist. Here, by modern, I refer architectures utilizing random-access system memory, dedicated instruction fetch streams with dynamic branching, and discrete processing units. Though Charles Babbage's 1842 Analytical Engine touched on these concepts, they would wait until the 1940s to re-emerge. The practical engineering context of 1936 was limited to calculating machines programmed via patch panels. Hence, for example, there is no explanation in his paper as to why a von Neumann architecture machine (1945) running a program would exhibit the computation theoretic results derived from a computation theory based on the Turing Machine (1936). + While his contemporaries largely built purely mathematical and logical frameworks, Turing uniquely tied computation theory directly to the abstraction of machines executing stored programs. Because physical hardware capable of executing stored memory programs had not yet been invented, this explicit architectural grounding makes Turing's work remarkably prescient. Still, Turing could not formally connect the Turing Machine to modern architectures, simply because those architectures did not yet exist. Here, by modern, I refer to architectures utilizing random-access system memory, dedicated instruction fetch streams with dynamic branching, and discrete processing units. Though Charles Babbage's 1842 Analytical Engine touched on these concepts, they would wait until the 1940s to re-emerge. The practical engineering context of 1936 was limited to calculating machines programmed via patch panels. Hence, for example, there is no explanation in his paper as to why a von Neumann architecture machine (1945) running a program would exhibit the computation theoretic results derived from a computation theory based on the Turing Machine (1936).

@@ -127,20 +127,20 @@

- An architecture provides programmers with information that is valuable when designing the logic of programs. This includes programmers across the entire software stack, such as systems programmers, compiler writers, firmware engineers, and application developers. In addition to specifying the instructions (instruction set architecture), it includes describing the memory and hardware virtualization features, specifying the behavior of the interrupt subsystem, the method of doing I/O, DMA, the special registers and their effects, any architectural busses, and the standards to be followed for each if any. More recently, this also includes specifying how programs can make use of secure areas. The architecture is specified by an architect. + An architecture provides programmers with information that is valuable when designing the logic of programs. This includes programmers across the entire software stack, such as firmware engineers, driver developers, systems programmers, compiler writers, and application developers. Although applications programs might only be exposed to the virtual architecture presented by various standards, various libraries, and the programming language used. In addition to specifying the instructions (instruction set architecture), architecture includes describing the memory and hardware virtualization features, specifying the behavior of the interrupt subsystem, the method of doing I/O, DMA, the special registers and their effects, any architectural busses, and the standards to be followed for each if any. More recently, this also includes specifying how programs can make use of secure areas. The architecture is specified by an architect.

The classic text by Hamacher, Vranesic, and Zaky carefully defines the organizational level as sitting between architecture and implementation. - Organization is the register-transfer level description of the machine, which includes internal buses, external buses and the state machines that implement the protocols used, control units, interrupt structures, and ALU layout. Crucially, it is at this level that decisions regarding instruction-level parallelism are made, such as whether the processor will employ a scalar, superscalar, or VLIW design, the depth of its execution pipelines, the use of out-of-order execution, branch prediction strategies, and the specific hierarchy of hardware caches. It dictates the logical arrangement of hardware and the procedures that force the data to flow to satisfy the architectural constraints. The organization is made by a design architect. + Organization is the register-transfer level description of the machine, which includes internal buses, external buses and the state machines that implement the protocols used, control units, interrupt structures, and ALU layout. Crucially, it is at this level that decisions regarding instruction-level parallelism are made, such as whether the processor will employ a scalar, superscalar, or VLIW design, the depth of its execution pipelines, the use of out-of-order execution, branch prediction strategies, and the specific hierarchy of hardware caches. It dictates the logical arrangement of hardware and the procedures that force the data to flow to satisfy the architectural constraints. Organization is sometimes called micro-architecture, and it is made by a design architect.

- It is not a requirement of a computer organization, nor an architecture, that it be capable of physical realization. The abstract Turing Machine organization developed in a later section serves as an example. Instead, an abstract organization can serve other purposes, in this case as a stepping stone to a modern architecture that could be realized. + It is not a requirement of a computer organization, nor an architecture, that it be capable of physical realization. The abstract Turing Machine organization developed in a later section serves as an example. Instead, an abstract organization can serve other purposes, in this case as a stepping stone to another organization that can be realized.

- The implementation instructs the manufacturing teams very specifically on what is to be built. For a microprocessor chip, this consists of instructions for cutting the lithography masks, the package to be used, and the production test programs to be run. The masks embody the placement of all the wiring, the location of doping wells, and the placement of transistor gates, including their specific sizes. The implementation is done by design engineers with the assistance of design synthesis tools and CAD tools. + The implementation instructs the manufacturing teams very specifically on what is to be built. For a microprocessor chip, this consists of the full wiring of the logic gates and transistors, instructions for cutting the lithography masks, the package to be used, and the production test programs to be run. The masks instructions for cutting the masks consists of the sizes and placement doping wells and gates, placement of contacts, where to run wires, etc. An implementation. The implementation is designed by design engineers, with the assistance of design synthesis tools and CAD tools.

@@ -176,7 +176,7 @@

Where the Turing Machine fits in

- The Turing Machine is a computation theory object that is suggestive of a simple architecture, and a computer organization. Any student who has had to do homework problems centered on Turing Machines, will have tracked the flow of data through the machine, i.e. worked at the register transfer level. However, a little work is needed to complete the architecture analog. The fundamentals are present, the read/write head, the tape, the procedure for using the tape, but other components are missing. The manipulation of symbols remains ungrounded. The tape is not well defined. The use of emptiness is non-architectural like. The tape transport is not articulated, though it is implied. The read buffer that holds a value read, so the programmed controller can do a write without clobbering the read data needed for the next transition is not identified as a component. As we proceed, we will likely discover other missing components. + The Turing Machine is a computation theory object that is suggestive of a simple architecture, and a computer organization. Any student who has had to do homework problems centered on Turing Machines, will have tracked the flow of data through the machine, i.e. worked at the register transfer level. However, a little work is needed to complete the architecture analog. The fundamentals are present, the read/write head, the tape, the procedure for using the tape, but other components are missing. The manipulation of symbols remains ungrounded. The tape is not well defined. The use of emptiness is non-architectural like. The tape transport is not articulated, though it is implied. The read buffer that is required, so the programmed controller can do a write without clobbering the read data needed for the next transition, is not identified as a component. As we proceed, we will likely discover other missing components.

Computation theoretic consequentiality

@@ -244,7 +244,7 @@

- then we can say without qualification that T is a same results transform. Though still implied are the sets of machines and tapes. + then we can say without qualification that T is a same results transform. Though still implied are the sets of machines, tapes, and questions.

Definition of the computation theoretic consequential/inconsequential transform property