Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The Mirror

Everything so far describes what you author — foci, links, stances, numbers. The mirror is what ThoughtML computes back: a second, mechanical reading of your structure. Where that reading disagrees with what you said, you have something worth looking at.

This is the heart of the language’s philosophy:

A mirror, not an oracle. The engine produces a second reading that can disagree with the author — but it reports the disagreement; it never overrides the author or hands down a verdict.

It’s all opt-in

None of the mirror runs by default. The base pipeline (parse → desugar → validate) emits stable canonical JSON with nothing computed. You turn readings on with flags:

FlagReading
--derivedDerived confidence — propagate evidence into a per-claim strength
--statusArgument status — grounded in/out/undecided
--auditConflict report — where confidence disagrees with status
--sensitivityper-edge leverage
--formulasevaluate = expr foci into computed_quantity
--decisionsdecision expected value
--actsemit Act provenance objects for readable actions
--computeall of the above
thoughtml --compute doc.thml      # the full second reading

The playground turns the display-relevant readings on by default — so what you see in the browser is the mirror, live.

Why opt-in

Two reasons:

  1. Stable output. A document without derivations serializes byte-for-byte identically every time, which is what keeps the example corpus strict-clean and makes the CLI safe to diff in CI.
  2. Computed ≠ authored. Every derived value lives in its own field, beside (never replacing) what you wrote. derived_confidence sits next to your authored confidence; computed_quantity next to your quantity. The mirror adds a reading; it never edits yours.

The four readings, in one line each

  • Derived confidencehow strong is this claim, given its evidence?
  • Argument statusdoes it survive every attack?
  • Conflict report — where do your stated beliefs and your structure disagree?
  • The compute layer — quantities, formulas, and expected value as a second reading of your numbers.

The following pages explain how each is computed.