Skip to content

R4: successor contracts (interface-only) + shared regressions for both routes (#107) #196

Description

@cameronfreer

Child of #107 (R4 converse). Depends on the route-neutral gate #195.

Compile both successor constructions as interface-only structures and theorem statements, before either hard core is attempted, and run the shared regression suite against both.

The two theorems are identically typed

nonempty_rankRepresentation_succ_via_kallenberg :
  M.RankRepresentation n → Nonempty (M.RankRepresentation (n + 1))

nonempty_rankRepresentation_succ_via_austin :
  M.RankRepresentation n → Nonempty (M.RankRepresentation (n + 1))

Same type, two proofs. They will not produce canonically equal representations, and no equality between their outputs should be stated or assumed; the point is two independent proofs of one existence theorem, not a canonical construction.

The public induction theorem uses whichever route lands first. The other remains an independently audited proof path — which is the entire value of building the second.

Regressions, run against both

  • bipartite (the Austin §3.6 configuration that refuted the shell theorem on 2026-08-03);
  • i.i.d.;
  • rank-zero / nullary;
  • mixed-pool.

Running these against interface-only statements is what makes the later pricing honest: a regression that cannot even be stated against one route's interface is a design defect found cheaply.

Deliverable

Statements and structures only, with no proof of either successor theorem. The hard cores are #197 and #198.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions