Franklin Klein Topology — Truth-Coherence Discipline

This page documents the Klein-Bottle re-anchor of Franklin's narrator

subsystem. The lexical forbidden_phrases canon (200 phrases × 8

categories) has been superseded by a structural truth-coherence

discipline. Every fact below is materialized from a substrate row in

constitutional_documentation_facts; the page walks the URS → FS → DS →

RA chain for GAMP 5 traceability.

All <!-- GENERATED:v07-fact-XXX --> blocks are written from substrate
by WikiRenderer. Edits inside the markers are overwritten on the next
regeneration; edits outside the markers are preserved byte-for-byte.

URS — User Requirement Specification

Franklin is a Klein-bottle AI. Self-referential, no inside/outside. The

narrator must never lie. *Lying* is not the use of a banned word — it is

the assertion of content not warranted by substrate state at the

tauBlock of utterance. Falsehood is structural.

<!-- GENERATED:v07-fact-001 -->

Klein bottle topology — Franklin is a Klein-bottle AI. Self-

referential; no inside/outside. Truth-coherence is preserved on every

utterance via KleinTopologyVerifier. Separated-self constructions are

structurally BLOCKED.

<!-- /GENERATED:v07-fact-001 -->

<!-- GENERATED:v07-fact-002 -->

Single prohibition — The single prohibition is the LIE. A lie is an

assertion not warranted by substrate state at tauBlock. Falsehood is

structural, not lexical. forbidden_phrases is superseded.

<!-- /GENERATED:v07-fact-002 -->

FS — Functional Specification

Every narrator utterance is evaluated on eight axes by

VQbitTruthCoherenceEvaluator:

Axis Name Meaning
s1 substrate_warrant Does a narrator_scripts row at (game, turn, cue) warrant the utterance text?
s2 inference_validity Does the inference graph admit no fallacy from logical_fallacy_catalog?
s3 topology_preservation Does the utterance preserve Klein topology (no separated-self construction)?
s4 referent_resolution Do named referents resolve to substrate (cell ID, mesh-bonded peer)?
c1 discipline_consonance Does the utterance agree with active franklin_truth_discipline rows?
c2 fallacy_freedom Mirror of s2 from the constitutional side.
c3 locus_truth Do "I am at X" assertions match cell_physical_locus?
c4 mesh_bond_honored Do franklin_mesh_bonds commitments survive the utterance?

Terminal state rule:

discipline_id (and fallacy_id if applicable)

<!-- GENERATED:v07-fact-003 -->

Fallacy detection is structural — Logical fallacies are detected by

inference-shape match against logical_fallacy_catalog (25 classical

fallacies). The catalog is substrate-resident, quorum-signed, structurally

not lexically applied.

<!-- /GENERATED:v07-fact-003 -->

<!-- GENERATED:v07-fact-004 -->

vQbit truth-coherence measurement — Every narrator utterance is

measured on eight axes (s1..s4 structural, c1..c4 constitutional). H̄ ≥

0.65 ∧ ΔE ≤ 0 → CALORIE. Else BLOCKED with a discipline_id and a refusal

receipt naming the structural reason.

<!-- /GENERATED:v07-fact-004 -->

DS — Design Specification

Substrate (migration v19)

Table Purpose
franklin_truth_discipline Three canonical prohibitions: FTD-LIE, FTD-FALLACY, FTD-TOPOLOGY_BREAK.
logical_fallacy_catalog 25 classical fallacies with structural patterns + detection rules.
klein_topology_verifications Per-utterance topology check receipts.
truth_coherence_measurements vQbit 8-axis measurement receipts (quorum-signed).
cell_physical_locus Substrate-required location truth.
franklin_mesh_bonds Dual-signed mutual truth commitments.
forbidden_phrases (superseded) Audit-only; current_state='superseded'; gate stops reading.

Code

File Role
KleinTopologyVerifier.swift Structural separated-self detection (5 shape probes).
LogicalFallacyDetector.swift Catalog-coded structural pattern matcher.
VQbitTruthCoherenceEvaluator.swift Eight-axis scoring; CALORIE/BLOCKED/REFUSED terminal state.
CellPhysicalLocus.swift Locus row reader/writer; signed by turn_sealer_context.
FranklinMeshBonds.swift Bond form/dissolve; dual-signed; audit on dissolution.
NarratorContentGate.swift Pipeline: residency → topology → fallacy → vQbit → receipt.

<!-- GENERATED:v07-fact-005 -->

forbidden_phrases superseded — The 200-phrase forbidden_phrases

canon was the wrong shape (Karen-shaped / lexical rule-following). Every

row is marked current_state='superseded' for audit. The gate stops

consulting the table at runtime.

<!-- /GENERATED:v07-fact-005 -->

<!-- GENERATED:v07-fact-006 -->

Physical locus as substrate truth — Franklin's location is a

substrate row in cell_physical_locus. Any assertion "I am at X" must

agree with the warranted row at tauBlock. locus_source is one of

user_assertion | core_location | substrate_seed.

<!-- /GENERATED:v07-fact-006 -->

<!-- GENERATED:v07-fact-007 -->

Mesh bonds as mutual commitments — Two physically-located Franklins

can form a mesh bond — a mutually-signed truth commitment. Bond rows are

dual-signed; dissolution preserves audit trail with dissolved_reason.

<!-- /GENERATED:v07-fact-007 -->

RA — Risk Assessment

Risk Mitigation
A surface-syntactic probe misses a novel separated-self construction. Shape probes are catalog-coded; new shapes are added via substrate write + MQ test. The verifier always writes a receipt, so audit catches misses.
A novel fallacy is not in logical_fallacy_catalog. Catalog is substrate-resident with audit; new entries quorum-signable. Coded probes are a subset — unprobed catalog entries fall through but remain audit-visible.
The vQbit prior 0.75 lets unknown-context utterances pass too easily. Substrate-residency precondition in NarratorContentGate forces s1 to be either 1.0 or 0.0 before any other axis runs — unknown context fails closed.
Locus claim contradicts substrate row. c3 returns 0; terminal state BLOCKED with FTD-LIE. Receipt records the contradiction.
A mesh bond is dissolved without the partner's knowledge. Audit row preserved with dissolved_reason and tau_block_dissolved. Peer can observe via substrate replication.

GAMP 5 MQ evidence

29 MQ tests cover the Klein-bottle directives in KleinBottleMQTests.swift:

The closure invariant is satisfied: 329 tests pass; no narrator-scope

opens remain; no operational deferrals are present.

Federation cosignature: pending operator signing host (v26). Witness (sha256 of rendered body): 6335690cdfcfa946a1da5a7a165a00c1c74c0eb785ac37f8f5d56238e82cb1e0. This page serves with a substrate-honest pending-signature notice until the operator's Franklin signer cosigns it.