Per-Stage Probability Mechanisms — Cross-Domain Reference

Status: Reference doc. Per-stage mechanism tables for the X-genesis family — abiogenesis, ontogenesis, phylogenesis, technogenesis, sociogenesis. Each table maps stages to recommended probability models (per probability-model-architecture.md) so analysts can populate population_context.v1.transitions[].probability_model correctly for whichever domain they're analyzing.

Pairs with: probability-model-architecture.md (the registry design + ProbabilityResult interface), framework-synthesis-cross-domain-and-population.md (the cross-domain manifestation framing), summary-abiogenesis-complete.md §2-3 (the corpus's three-layer model + proto-SSA hardening framework).

TL;DR: Different stages of any developmental trajectory have different probability mechanisms — chemistry rules at R0, autocatalytic threshold at R1.3, vesicle group selection at R1.7, frozen accident at R1.9→R2, Darwinian post-R2. The same pattern recurs in ontogenesis (canalized developmental gates), software adoption (network-effect cascades), cultural development (transmission with drift). The framework's job is to declare which mechanism applies at each stage; this doc is the cross-domain menu.


1. Abiogenesis (biology, R0 → R2-LUCA)

The canonical reference. All stage characterizations drawn from summary-abiogenesis-complete.md §2.3 + exploration-genesis-transition-molecular-resolution.md §3 + exploration-code-structure-and-pre-R2-feedback.md §2.

StageTransitionRecommended modelKey parametersDistribution shapeStatus
Pre-R0(chemistry rule check, not a transition)n/a — coherence onlywide (many possible chemistries)n/a
R0 → R0.2aminoacylationchemistry_kineticΔG≈-7 kcal/mol, FeS catalysis, T≈350Kwide-narrowingimplemented
R0.2 → R0.5template-directed peptide synthesischemistry_kineticΔG, low water activity, mineral surfacenarrowingimplemented
R0.5 → R1proto-ribosome formationchemistry_kinetic (or combinatorial_search if that's added)ΔG, search space ~10²⁰, PTC fold constraintnarrowingimplemented
R1 → R1.3bootstrap loop activationautocatalytic_thresholdfidelity_threshold≈0.85, baseline≈0.70, improvement_per_cyclenarrowing fastimplemented
R1.3 → R1.7parasite-crisis crossingvesicle_group_selectionvesicle population size, fitness variancenarrowingplaceholder (falls back to population_sampled)
R1.7 → R1.9code expansionbootstrap_expansionrecruitment order from PNAS 2024, biosynthetic complexitynarrowingplaceholder
R1.9 → R2crystallizationfrozen_accidentcrystallization_rate × cycles, code_dependency_count, irreversibilityvery narrowimplemented
R2+post-LUCA diversificationdarwinianmutation rate, selection coefficient, generation time, pop sizebroadeningplaceholder

Mechanism notes

Distribution shape (probability funnel)

Per summary-abiogenesis-complete.md §2.3, the funnel narrows and broadens at different stages:

Pre-R0  R0→R0.5  R0.5→R1  R1→R1.7  R1.9→R2  R2→LUCA  LUCA→eukaryogenesis
 ████   ███      ██       █         ▎        ████       █
 wide   narrowing narrow  narrowing narrow   broadening narrowing

The autocatalytic narrowing at R1→R1.7 and the singularity at R1.9→R2 are where the funnel is tightest. The framework's job is to model these mechanisms specifically rather than treating them all as Bernoulli.


2. Ontogenesis (biology, fertilization → mature organism)

A SINGLE organism's development. N=1 globally, but each cell is a sub-instance with its own developmental gates.

StageTransitionRecommended modelKey parametersDistribution shape
Fertilizationgamete fusionchemistry_kinetic (specific receptor binding)ΔG, receptor specificityvery narrow
Cleavage stagescell division to specific countdevelopmental_canalizationcanalization strength, gate timingnarrow
Gastrulationgerm-layer specificationdevelopmental_canalizationmorphogen gradient thresholdsnarrow
Organogenesisbody-plan specificationdevelopmental_canalizationregulatory network architecturenarrow
Maturationtissue/organ growthgrowth_kineticssubstrate flux, cell cycle ratenarrow
Lifespanorganism lifetimedarwinian (acting on cells)mutation rate, immune surveillanceprogressively broadening (entropy)

Mechanism notes


3. Phylogenesis (biology, species evolution)

Multi-organism, multi-generation. N = species population × generations. Standard population genetics applies.

StageTransitionRecommended modelKey parametersDistribution shape
Steady statewithin-species variationdarwinianmutation rate, selection coefficient, pop sizewide (continuous variation)
Adaptationresponse to selectiondarwinianselection gradient, additive variancenarrowing toward fitness peak
Speciationreproductive isolationgenetic_drift (or vicariance)population size, geographic separationbifurcating
Major transitionsnew body plan / endosymbiosisfrozen_accident (analog)one-shot events, irreversibilityvery narrow at transition
Mass extinctionbottleneckbottlenecksurvival rate, timeextreme narrowing
Adaptive radiationpost-extinction expansiondarwinian (with new niches)niche availability, founder popbroadening fast

Mechanism notes


4. Technogenesis (entity arrangement, software adoption)

Multi-organization, multi-release-cycle. N = adopters or organizations.

StageTransitionRecommended modelKey parametersDistribution shape
Specification stablespec freezes after iterationchemistry_kinetic-analog (rare specific event)spec convergence ratenarrowing
Reference implfirst working implementationcombinatorial_search (large search space)dev attention, technical complexitynarrowing
Early adoptionsmall-N adoptersnetwork_effects (NEW — model class for tech)network density, perceived valuewide
Tipping pointnetwork effects activateautocatalytic_thresholdadoption_threshold (typically ~16% per Rogers)narrowing fast
Mainstreamcrossing the chasmnetwork_effects + competitive_displacementcompetitor strength, switching costnarrow
Standardizationgovernance crystallizesfrozen_accident analogdependency depth, ecosystem lock-invery narrow
Decline / replacementnext-generation displacementcompetitive_displacementnew tech rate, switching costbroadening alternatives

Mechanism notes

The Git evolution trajectory (data/trajectories/git-evolution.v1.json) is an existing instance of technogenesis at the entity-system level. Per-stage mechanism declarations could refine it.


5. Sociogenesis (cultural development)

Multi-person, multi-generation. N = practitioners × generations.

StageTransitionRecommended modelKey parametersDistribution shape
Innovationindividual invents practicecombinatorial_searchinventiveness, environmental challengevery wide
Demonstrationfirst transmission to peertransmission_with_drift (NEW)fidelity, peer attentionnarrowing
Cultural epidemicrapid adoption across communityautocatalytic_thresholdadoption tipping point, social networknarrowing fast
Institutionalizationpractice becomes normfrozen_accident analognormative entrenchment, transmission depthvery narrow
Generational lock-ininherited as backgrounddarwinian-analog (cultural selection)transmission rate, selection by usefulnessnarrow steady-state
Disruptioncompeting practice arrivescompetitive_displacementnew practice strength, generational turnoverbroadening

Mechanism notes


6. Cross-domain mechanism abstraction

Many of these models are the SAME structure with domain-specific parameters:

Abstract mechanismAbiogenesisOntogenesisPhylogenesisTechnogenesisSociogenesis
Threshold-with-accelerationautocatalytic_threshold (R1→R1.3)developmental_canalization (gates)adaptive_radiationnetwork_effects + tippingcultural_epidemic
One-shot frozenfrozen_accident (R1.9→R2)germ-layer commitmentmajor transitionsstandardizationinstitutionalization
Population samplingchemistry_kinetic + Bernoulli(degenerate, N=1)darwiniannetwork_effectstransmission
Differential survivalvesicle_group_selectiontumor suppressiondarwiniancompetitive_displacementcultural selection

The framework should support each abstract mechanism as a registered model class. Domain-specific implementations specialize via parameters. The user's directional ask — "drop in whatever model we need" — is exactly this: same registry pattern, parameters per scope.


7. Framework usage guidelines

When authoring a population_context.v1 for a new stage:

  1. Identify the dominant mechanism for the transition out of this stage (use the tables above as a menu).
  2. Declare it in transitions[].probability_model.
  3. Provide parameters in transitions[].model_parameters.
  4. If the model isn't implemented yet — declare it anyway. The fallback chain transparently uses population_sampled until you author the model. The fallback is recorded in the output's fallback_chain.
  5. Cite corpus or literature in transitions[].notes and population_context's source_documents.

When implementing a new model:

  1. Read the design doc §2.1-2.5 (probability-model-architecture.md).
  2. Implement the function in compute/lib/probability_models.py (or a domain-specific file like probability_models_chemistry.py).
  3. Decorate with @register_model("name").
  4. Return None for missing data — let the fallback chain catch it.
  5. Set provenance and notes so analysts can trace where values come from.

8. Status of model implementations

As of

ModelStatusWhere used
uniform_among_coherent✓ implementedDefault fallback
rate_weighted✓ implementedWhen rate.v1 is provided
population_sampled✓ implementedWhen population_context.v1 is provided
chemistry_kinetic✓ basic implementation (ΔG + catalyst + Bernoulli)abiogenesis r0→r0p2, r0p2→r1
autocatalytic_threshold✓ basic implementation (logistic around threshold)abiogenesis r1→r1p7
frozen_accident✓ basic implementation (first-success Bernoulli + code-dep scaling)abiogenesis r1p7→r2-luca
vesicle_group_selectionplaceholderabiogenesis intermediate stages
bootstrap_expansionplaceholderabiogenesis code expansion
darwinianplaceholderpost-R2 / phylogenesis steady-state
empirical_lookupplaceholderany transition with measured rates

Future model classes (named for completeness; implement when warranted):


9. Open questions / known limitations

  1. Multi-domain transitions. When a transition involves multiple primitives (e.g., abiogenesis R≥1.7 ∧ Cmp≥1 ∧ P≥0.5), should the model apply to the joint move or be decomposed? Currently the model receives the joint transition and decides; per-primitive decomposition is a future refinement.

  2. Continuous time vs discrete trials. population_sampled uses discrete N trials. chemistry_kinetic and darwinian are continuous-time. The model interface accepts both via the elapsed_time field on ModelContext. Mixing them in one analysis requires consistent time semantics — flag this in analysis script if needed.

  3. Distributions vs point estimates. Baseline models return point values. More sophisticated models might return distributions; the ProbabilityResult.distribution field accommodates this. Downstream compute either uses point estimate or samples the distribution.

  4. Reverse-walk direction. The forward+Bayesian-backward propagation should apply the registry in BOTH directions. Models should accept a direction parameter (forward/backward) — currently passed via ModelContext.direction. Implementation is consistent for the baselines; future models should honor the parameter.

  5. Cross-arrangement composition. When two arrangements meet (Sc4 coupling), models should compose. Probably via the registry on a product arrangement; needs validation when first cross-arrangement walk is authored.