# DRCT v20 — Morphism-Type Invention

## Removed assumption

v19 assumed that the map connecting two worlds is a bijection.

v20 makes the map class latent among:

\[
\boxed{
\text{bijection},
\text{injection},
\text{surjection},
\text{general deterministic function},
\text{stochastic kernel}.
}
\]

The learner receives anonymous source/target state labels plus repeated
cross-world experimental outcomes.

It is not told which morphism class generated the observations.

---

## Deterministic map tomography

For source states \(x\in X\), repeated experiments observe target states
\(y\in Y\).

A deterministic map exists iff every repeated observation from the same source
state agrees:

\[
x\mapsto y.
\]

Once every source state has been observed, the candidate map

\[
f:X\to Y
\]

is identified.

Its structural type is then operational:

- bijection: injective and surjective;
- injection: injective but not necessarily onto;
- surjection: onto but not necessarily injective;
- general deterministic function: neither property required.

The model code uses the cardinality of the corresponding finite function class:
\[
\log_2(n!)
\]
for bijections,
\[
\log_2 \frac{m!}{(m-n)!}
\]
for injections,
\[
\log_2 |\operatorname{Surj}(n,m)|
\]
for surjections, and
\[
n\log_2 m
\]
for unrestricted functions.

Thus overly flexible deterministic types pay a description-length penalty.

---

## Structural dynamics audit

For deterministic laboratories, source and target dynamics satisfy

\[
\boxed{
f\circ F_X=F_Y\circ f.
}
\]

This distinguishes structural morphisms from arbitrary lookup correspondences.

A bijective \(f\) is an isomorphism of the finite dynamics.

A surjective \(f\) realizes a quotient/lumping of source dynamics.

An injective \(f\) realizes an embedding into an invariant target subsystem.

---

## Stochastic kernel

If repeated interventions from the same source state yield incompatible target
outcomes, every deterministic morphism is falsified.

The next map class is a Markov kernel

\[
K(y\mid x),
\qquad
\sum_y K(y\mid x)=1.
\]

v20 uses an independent symmetric Dirichlet prior for each source row and scores
the stochastic model by its integrated sequential code length.

Thus the stochastic morphism is not chosen because it is maximally flexible;
it is chosen when deterministic structure cannot encode the repeated outcomes
economically or consistently.

---

## Definition — Morphism-Type Closure

Let \(\mathcal M_0\subset\mathcal M_1\subset\cdots\) be candidate cross-world
map classes.

For experimental data \(D\), define

\[
\boxed{
M^\star
=
\arg\min_{M\in\mathcal M}
L(M,D).
}
\]

The selected morphism type is the least-description cross-world map class that
survives prospective observations.

Failure of a rigid class is itself informative:

- collisions falsify injection/bijection;
- uncovered target states falsify surjection/bijection;
- repeated incompatible outputs falsify all deterministic maps.

The residual therefore determines which morphism class must be admitted.

---

## Prospective observable transfer

After a deterministic map \(f\) is frozen, any newly generated target observable
\(h:Y\to\mathbb R\) pulls back to

\[
\boxed{
h_X=h\circ f.
}
\]

For a stochastic kernel,

\[
\boxed{
h_X(x)=\mathbb E[h(Y)\mid x]
=\sum_y K(y\mid x)h(y).
}
\]

This tests whether the inferred morphism type is operationally useful on a new
observable that played no role in map discovery.

---

## Scope

v20 does not invent map classes from an unrestricted universe. It selects among
a supplied morphism hierarchy.

The next boundary is therefore the hierarchy itself: infer whether a new map
class should exist, rather than selecting from
{bijection, injection, surjection, function, kernel}.
