Jump to content

The Principia Machina/Tutorial/4 Write the Measure Set: Difference between revisions

From The Invariance Itself
m 1 revision imported
m 1 revision imported
Line 1: Line 1:
{{TPM map}}
{{TPM map}}
{{DISPLAYTITLE:Tutorial 4: Write the Measure Set}}
{{DISPLAYTITLE:Tutorial 4: Write the Measure Set}}
''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: [[The Principia Machina/Inputs|Public Recorder inputs]].''
''Tutorial: create a new UWC. One small example - a mass on a spring, moving along one line, with nothing else in its world - 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: [[The Principia Machina/Inputs|Public Recorder inputs]].''


== Purpose ==
== Purpose ==
Write the third zone, the last gate: the parameters, the named constants, and a yardstick.
Write the third zone, the last gate: the parameters, the named constants, and a yardstick.


''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.''
''Explains: TPS 0.2.0 (proposed; revision 5 of the tree, imported 2026-09-26, not yet declared; TPS 0.1.0 was declared final on 2026-09-22), whose sections 2.2 to 2.5 now carry the zone schemas at schema 0.4.0 with the optional declared form (records D92.1, D98.1, D99.1, D100.1, D103.1-D105.1, D106.1-D108.1 and D132.1); TPC-PY as built at increment 9 (tpc_zone 0.4.0, tpc_units 0.1.0, tpc_tests 0.2.0, tpc_form 0.1.0; no TPC-PY version is declared yet) with check_draft 0.4.0. Where this page and the specification differ, the specification governs.''


== Step 4.1: the parameters ==
== Step 4.1: the parameters ==
<pre>
<pre>
"PARAMETERS": {
"PARAMETERS": {
    "STEP_CONVENTION": "one application of an inference rule or algebraic identity is one step",
  "STEP_CONVENTION": "one application of an inference rule or algebraic identity is one step",
    "K": "2",
  "K": "2",
    "N_X": 2,
  "N_X": 2,
    "S_MAX": 10
  "S_MAX": 10
  }
}
</pre>
</pre>


Line 21: Line 21:
* '''K''': the multiplier in the test of whether two measured values contradict. A string.
* '''K''': the multiplier in the test of whether two measured values contradict. A string.
* '''N_X''': how many independent contradictions of a standing record open an audit on it. A whole number, no quotes.
* '''N_X''': how many independent contradictions of a standing record open an audit on it. A whole number, no quotes.
* '''S_MAX''': how deep T3 searches the kernel for a contradiction. A whole number, no quotes.
* '''S_MAX''': the depth T3 is bounded by. A whole number, no quotes. What the machine runs of T3 today stops at depth 1; the rest of the search to S_MAX is the declaring authority's inspection ([[The Principia Machina/TPS/2.2 The Prime Kernel|TPS 2.2]]).
The example leaves out IC2_POLICY and PROMOTION_FLOOR, so their defaults apply: an untied DOF is a named gap, and a result needs falsifier class F2 to be promoted. Writing the defaults out gives the same digest. The accepted ranges are on [[The Principia Machina/Inputs/Measure Set|Inputs: the Measure Set]].
The example leaves out IC2_POLICY and PROMOTION_FLOOR, so their defaults apply: an untied degree of freedom (DOF) is a named gap, and a result needs falsifier class F2 to be promoted. Writing the defaults out gives the same digest. The accepted ranges are on [[The Principia Machina/Inputs/Measure Set|Inputs: the Measure Set]].


== Step 4.2: the constants ==
== Step 4.2: the constants ==
Line 28: Line 28:
<pre>
<pre>
"CONSTANTS": [
"CONSTANTS": [
    {"NAME": "w_a", "VALUE": "1"},
  {"NAME": "w_a", "VALUE": "1"},
    {"NAME": "w_s", "VALUE": "0.5"}
  {"NAME": "w_s", "VALUE": "0.5"}
  ]
]
</pre>
</pre>
These constants belong to the Measure Set, not to the physics: they weigh records against each other and never enter a law.


== Step 4.3: a yardstick ==
== Step 4.3: a yardstick ==
Line 37: Line 39:
<pre>
<pre>
"YARDSTICKS": [
"YARDSTICKS": [
    {
  {
      "NAME": "combined_distance",
    "NAME": "combined_distance",
      "KEY": ["SR1", "WSUM:w_a*A;w_s*S", "S"],
    "KEY": ["SR1", "WSUM:w_a*A;w_s*S", "S"],
      "LIMITING": []
    "LIMITING": []
    }
  }
  ]
]
</pre>
</pre>


Line 48: Line 50:


== Step 4.4: check ==
== Step 4.4: check ==
Add <code>"TMS": { ... }</code> and run the checker. With all three zones present it now runs every check, runs the yardstick on the synthetic record suite, runs the final pass, and prints the digests; the output is on the next page.
Add <code>"TMS": { ... }</code> and run the checker. With all three zones present it now runs every check, runs the yardstick on the synthetic record suite, runs the final pass - T3 over the constraints and over the laws whose every name has a value, and IC2_POLICY - and prints the digests; the output is on the next page.


== Non-goals ==
== Non-goals ==

Revision as of 00:13, 27 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 spring, moving along one line, with nothing else in its world - 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 third zone, the last gate: the parameters, the named constants, and a yardstick.

Explains: TPS 0.2.0 (proposed; revision 5 of the tree, imported 2026-09-26, not yet declared; TPS 0.1.0 was declared final on 2026-09-22), whose sections 2.2 to 2.5 now carry the zone schemas at schema 0.4.0 with the optional declared form (records D92.1, D98.1, D99.1, D100.1, D103.1-D105.1, D106.1-D108.1 and D132.1); TPC-PY as built at increment 9 (tpc_zone 0.4.0, tpc_units 0.1.0, tpc_tests 0.2.0, tpc_form 0.1.0; no TPC-PY version is declared yet) with check_draft 0.4.0. Where this page and the specification differ, the specification governs.

Step 4.1: the parameters

"PARAMETERS": {
  "STEP_CONVENTION": "one application of an inference rule or algebraic identity is one step",
  "K": "2",
  "N_X": 2,
  "S_MAX": 10
}
  • STEP_CONVENTION: what counts as one derivation step. Say it plainly; every step count in this UWC is read under it.
  • K: the multiplier in the test of whether two measured values contradict. A string.
  • N_X: how many independent contradictions of a standing record open an audit on it. A whole number, no quotes.
  • S_MAX: the depth T3 is bounded by. A whole number, no quotes. What the machine runs of T3 today stops at depth 1; the rest of the search to S_MAX is the declaring authority's inspection (TPS 2.2).

The example leaves out IC2_POLICY and PROMOTION_FLOOR, so their defaults apply: an untied degree of freedom (DOF) is a named gap, and a result needs falsifier class F2 to be promoted. Writing the defaults out gives the same digest. The accepted ranges are on Inputs: the Measure Set.

Step 4.2: the constants

A yardstick uses no literal numbers, so its weights are named here:

"CONSTANTS": [
  {"NAME": "w_a", "VALUE": "1"},
  {"NAME": "w_s", "VALUE": "0.5"}
]

These constants belong to the Measure Set, not to the physics: they weigh records against each other and never enter a law.

Step 4.3: a yardstick

A yardstick is optional. This one orders records first by whether they contradict the TFK, then by (assumptions + 0.5 x steps), then by steps:

"YARDSTICKS": [
  {
    "NAME": "combined_distance",
    "KEY": ["SR1", "WSUM:w_a*A;w_s*S", "S"],
    "LIMITING": []
  }
]

It meets the key rules: it begins with SR1, its weights are named constants, and one more assumption never makes a record closer. See Inputs: yardsticks.

Step 4.4: check

Add "TMS": { ... } and run the checker. With all three zones present it now runs every check, runs the yardstick on the synthetic record suite, runs the final pass - T3 over the constraints and over the laws whose every name has a value, and IC2_POLICY - and prints the digests; the output is on the next page.

Non-goals

The values here are illustrative. Choose yours under the strike rule (TPS 4.4). The project-wide parameters in TPS 7.2 are not part of any Measure Set.

Worked example

The step is its own example.

Governing sections: TPS 2.4, 4.4 and 4.5.


Previous: 3 Write the Translation Manifold. Next: 5 Check the draft.