Jump to content

The Principia Machina/Tutorial/3 Write the Translation Manifold: Difference between revisions

From The Invariance Itself
tutorial: 3 Write the Translation Manifold
 
m 1 revision imported
(No difference)

Revision as of 01:18, 23 September 2026

The Principia Machina: map
Reading the diagrams
Structure key
Process key
Definition of terms
Roles
Reading by audience
Start here: the walk through
The operator's guide
Tutorial: create a UUID Workspace Container (UWC)
Public Recorder inputs
Sponsors: your first agent
The specification
Contents: parts, tables, diagrams
TPS 0.5.0 (declared 2026-10-03, revision 8; machine-optimized text)
Decisions (the foundations record, one line each)


Tutorial: create a new UWC. One small example - a mass on a linear spring, moving only along x - is taken from a blank file to a declared UWC in eight steps. Each step says what runs today and what is specified but not yet built. It explains; the specification governs. Field-by-field reference: Public Recorder inputs.

Purpose

Write the second zone: first the header, then one entry for each degree of freedom.

Explains: TPS 0.1.0, revision 4 (declared final 2026-09-22); the zone schemas the declaring authority selected on 2026-09-22 (records D92.1, D98.1, D99.1, D100.1, and for units D103.1, D104.1, D105.1; schema 0.3.0), whose text enters TPS at revision 5, and the kernel tests and isomorphism checks selected the same day (D106.1, D107.1, D108.1; tpm_kernel_tests 0.2.0), whose text follows at the next TPS revision; TPC-PY as built 2026-09-22 (tpc_zone 0.3.0, tpc_units 0.1.0, tpc_tests 0.1.0; no TPC-PY version is declared yet) with check_draft 0.3.0. Where this page and the specification differ, the specification governs.

Step 3.1: the environment inventory

List the quantities of the world the kernel describes, each with its dimension. These are what the DOF will be identified with.

"ENVIRONMENT_INVENTORY": [
    {"ENVIRONMENT_QUANTITY": "position", "DIMENSION": "L1"},
    {"ENVIRONMENT_QUANTITY": "velocity", "DIMENSION": "L1 T-1"},
    {"ENVIRONMENT_QUANTITY": "height", "DIMENSION": "L1"}
  ]

Step 3.2: the signature

List the relations on the DOF that the identification must carry into the world. Here: taking the time derivative turns position into velocity.

"SIGNATURE": [
    {
      "NAME": "time_derivative",
      "OVER": ["x", "v"],
      "IMAGE": "d/dt maps position to velocity"
    }
  ]

Step 3.3: the transformations

List the changes of description under which an identification stays the same: here, moving the origin of time.

"TRANSFORMATIONS": [
    {"NAME": "time_translation", "STATEMENT": "t -> t + t0"}
  ]

Step 3.4: the entries

One entry per DOF. Each says what the DOF is (IDENTIFICATION), where that holds (DOMAIN), what would show it false (FALSIFIER) and how severe that test is (FALSIFIER_CLASS), which laws and constraints it carries (BEARS), and its dimension.

"ENTRIES": [
    {
      "NAME": "E_x",
      "DOF": "x",
      "DOMAIN": "|x| < x_max",
      "ENVIRONMENT_QUANTITY": "position",
      "IDENTIFICATION": "x is the displacement from equilibrium along the spring axis",
      "FALSIFIER": "a measured restoring force not proportional to x inside the domain",
      "FALSIFIER_CLASS": "F3",
      "BEARS": ["N2", "KIN"],
      "DIMENSION": "L1"
    },
    {
      "NAME": "E_v",
      "DOF": "v",
      "DOMAIN": "|x| < x_max",
      "ENVIRONMENT_QUANTITY": "velocity",
      "IDENTIFICATION": "v is the time derivative of x",
      "FALSIFIER": "a measured velocity differing from dx/dt beyond uncertainty",
      "FALSIFIER_CLASS": "F2",
      "BEARS": ["KIN"],
      "DIMENSION": "L1 T-1"
    },
    {
      "NAME": "E_z",
      "DOF": "z",
      "DOMAIN": "always",
      "ENVIRONMENT_QUANTITY": "height",
      "IDENTIFICATION": "z is the height above the track",
      "FALSIFIER": "any measured z different from 0",
      "FALSIFIER_CLASS": "F3",
      "BEARS": ["FREE_Z", "C_NOZ"],
      "DIMENSION": "L1"
    }
  ]

Choosing the falsifier class:

  • E_x names a measured force: an outside measurement could contradict it. F3, external.
  • E_v can be checked by anyone from the recorded values alone. F2, independent.
  • E_z names a measured height. F3.

F1 - a test only the author's own re-derivation can make - is admitted but weak; F0, no falsifier, is refused.

E_z identifies z although C_NOZ fixes it. A fixed DOF stays in the manifold and needs an entry, and E_z bears C_NOZ. Only a DOF that a constraint removes has no entry (record D107.1).

Step 3.5: check

Add "TrM": { "HEADER": { ... }, "ENTRIES": [ ... ] } beside the TPK and run the checker again (examples/spring_step3_tpk_trm.json):

TPK  PASS
     T2 PASS
     T5 PASS
TrM  PASS
     IC1-IC4 PASS
TMS  MISSING (not checked)
FINAL not run: a zone is missing

Advisory result (TPC-PY: tpc_zone 0.3.0, tpc_units 0.1.0, tpc_tests 0.1.0; schema 0.3.0). TPX decides at the gate.

The manifold passes its structure check and then the isomorphism checks IC1 to IC4: each of the three environment quantities is identified by exactly one entry, and each DOF by exactly one; the dimensions match on both sides; and every law and constraint an entry bears is about DOF that have entries.

Tips

  • Every entry needs all nine fields, including NAME: a measured result will later name the entry it belongs to.
  • An inventory quantity that no entry uses is refused by IC1. A DOF no entry reaches is not refused: IC2 holds it as a named gap, and the Measure Set's IC2_POLICY settles it at the final pass.
  • The checks take quantities by name. Two names for one quantity - "position" and "displacement" - count as two; list each quantity once.

Non-goals

The manifold has no field for exclusions. To restrict the kernel, go back to step 2 and add a constraint (TPS 2.3).

Worked example

The step is its own example. Field rules: Inputs: the Translation Manifold.

Governing sections: TPS 2.3 and 2.1.


Previous: 2 Write the Prime Kernel. Next: 4 Write the Measure Set.