cd /news/artificial-intelligence/show-hn-terraforming-with-minimal-fo… · home topics artificial-intelligence article
[ARTICLE · art-99015] src=github.com ↗ pub= topic=artificial-intelligence verified=true sentiment=· neutral

Show HN: Terraforming with Minimal Founders – Method for Diversity from Two?

A new open-source project, Founder Population Init, proposes that a tiny founding population of two diploid individuals could generate genetic diversity through a temporary generative inheritance system, called FounderCode, rather than transporting many finished genomes. The project's experiments, including the reproducible model in experiments/006.2_frequency_calibration, test whether such a mechanism can alter the neutral population-genetic consequences of an extreme founder event without hiding a large archive of donor genomes. The work raises questions for theoretical biology and demographic inference, though it does not establish that such a mechanism exists or is biologically practical.

read13 min views1 publishedAug 16, 2026
Show HN: Terraforming with Minimal Founders – Method for Diversity from Two?
Image: Michielbdejong (auto-discovered)

Can a tiny number of living founders, equipped with a temporary generative inheritance system, become theinit()

function for an entire genetically robust population?

Imagine sending life to another world.

The obvious way to preserve a species is to bring as much of it as possible: many individuals, embryos, gametes, seed banks, genome libraries, carefully preserved diversity.

But there is another possibility.

What if the smallest viable founding population did not need to carry all of the diversity a future population would require?

What if it carried the ability to generate it?

A handful of living founders could contain not merely genomes, but a temporary biological initialization system: a compact set of rules capable of producing controlled genetic diversity during the dangerous first generations of a new population. As that population grows, recombines and becomes genetically stable, the mechanism fades away and eventually disappears, leaving behind an ordinary evolving population.

In that picture, the founders are not an archive.

They are a seed for a population-generating process.

For future biological colonization, conservation, or long-duration propagation of life, this raises an information question: must we transport many finished genomes, or could some of that burden be replaced by generative biological machinery?

For theoretical biology, it asks how much population-level genetic structure must be explicitly stored and how much can arise from rules, randomness, recombination and ordinary inheritance.

Looking backward, it also exposes a boundary in demographic inference. Population history is reconstructed from genetic data under assumptions about how inheritance, mutation and recombination work. If an early inheritance mechanism fell outside that model class, the demographic history inferred from descendants need not be identical to the literal history that produced them.

None of this establishes that such a mechanism exists, has existed, or is biologically practical.

This repository asks a narrower question and tries to break it experimentally:

Can temporary generative inheritance substantially change the neutral population-genetic consequences of an extreme founder event, without simply hiding a large archive of donor genomes inside the model?

Prefer a visual walkthrough first? ▶ Watch the video explainer on Youtube (generated with notebooklm)

A visual introduction to the core idea, the founder-bottleneck problem, the FounderCode hypothesis, and the experimental path leading to the final 006.2 simulation. The explainer walks through the core idea, the population-genetics problem behind extreme founder events, the FounderCode hypothesis, and the experimental path that led to the final

006.2

simulation.It is an accessible companion to the project. The source code, result files, experiment READMEs, and this README remain the authoritative research record.

For the current reproducible model, go directly to experiments/006.2_frequency_calibration/.

Two ordinary diploid founders begin with only four chromosome copies at each locus. Population growth can reshuffle those copies, and ordinary mutation can slowly add new variants, but growth does not magically restore all of the standing variation lost at the founding event.

Founder Population Init adds a temporary third ingredient:

few living founders
        +
ordinary inheritance
        +
temporary generative germline
        ↓
structured early diversity
        ↓
population grows
        ↓
generator shuts down
        ↓
ordinary evolution only

The hypothetical mechanism is called FounderCode or FounderProgram.

It should not be imagined as "mutation turned up very high" or as a secret library of hundreds of complete genomes.

The research question is whether generative rules can create useful population-level statistical diversity without explicitly storing all of the examples they can produce.

If you want to understand or try one simulation, use:

experiments/006.2_frequency_calibration/

This is the current integrated experiment and the main implementation to inspect, run, modify and challenge.

It includes the important pieces developed across the earlier experiments:

  • a neutral sequence-derived source population generated with msprime

; - a 32-founder ordinary reference;

  • an ordinary two-founder control;
  • the same exact two founders plus FounderProgram; - ordinary mutation and recombination;
  • no external donor-haplotype bank;
  • no source allele-frequency table;
  • no source polymorphic-position list;
  • procedural per-rewrite haplotypes;
  • a neutral-theory 1/k

frequency grammar; - a marginal-preserving correlation model for generated haplotypes;

  • feedback shutdown of FounderProgram;
  • blind dadi

inference from descendant SFS only.

The earlier experiments are important because they show how we got here, including the failed v4 inference experiment. But they are research history, not the recommended starting implementation.

From the 006.2 directory:

mamba activate founder-v6
chmod +x run_v6_2.sh

./run_v6_2.sh --export-only

./run_v6_2.sh

Main outputs are written under:

founder_v6_2_out/
├── v6_2_preflight.json
└── v6_2_dadi_results.json

If you are reviewing the project rather than reproducing its history, read the root README, then 006.2, then go backward only when you want to understand why a design choice exists.

The current computational evidence supports the following limited claim:

In simulation, a temporary embedded generative inheritance mechanism can substantially reduce the neutral population-genetic signature of an extreme two-founder bottleneck. This remains true after removing an explicit donor-genome reservoir and replacing it with procedural rules, although a detectable demographic and frequency-spectrum signature remains.

The completed v6.2 experiment strengthens the mechanism side of that claim:

A meaningful part of neutral population-level diversity structure can be generated from general rules rather than copied from an empirical donor-genome archive. Blind demographic inference still detects a severe bottleneck/recovery signature, so the result is substantial repair and partial masking, not demographic invisibility.

This is a theoretical / computational proof of principle.

It is not evidence that:

  • a real biological germline could implement FounderCode;
  • generated neutral variants would preserve functional species viability;
  • two real humans could found a healthy human population this way;
  • such a mechanism existed in human history;
  • the 52-byte parameter payload is a complete biological genome generator.

The project did not begin with the final mechanism.

Instead, each experiment removes a shortcut or attacks a weakness exposed by the previous one.

Experiment Main question Outcome
001_bootstrap
Can temporary diversity generation rescue a two-founder toy population at all? Positive toy proof of concept
002_linked_genomes
Does the effect survive linkage, recombination, haplotypes and simple viability constraints? Positive; 2 + init resembles a much larger ordinary founding population
003_blind_inference
Does the effect remain when the observer does not see FounderCode internals? Positive direction; exact "equivalent founder count" shown to be poorly identifiable
004_dadi
Will an external demographic inference tool see the same effect? Negative / invalid substrate; retained as a failure
005_sequence_dadi
Does the effect survive on sequence variation generated by standard ancestry/mutation machinery? Strong positive, but uses a donor haplotype bank
006_embedded_generator
Can we delete the donor bank and procedurally generate variation? Positive; substantial repair, visible SFS scar
006.1_generator_frequency
Does fresh procedural haplotype generation reduce the scar caused by template reuse? Strong improvement
006.2_frequency_calibration
Can neutral-theory frequency rules improve the result without reading the target SFS? Final positive proof-of-principle: strong direct SFS repair; blind dadi still detects a finite severe bottleneck/recovery scar

The failures matter as much as the successes. In particular, v4 demonstrated that a sophisticated inference tool cannot make an invalid genetic substrate scientifically meaningful.

Later experiments compare four arms:

source_equilibrium

A neutral source population generated withmsprime

. This is the long-run reference. - many_founder_reference

Ordinary descent from 32 diploid founders. - ordinary_2

Ordinary descent from exactly two diploid founders. - two_plus_generator

Thesame exact two founders asordinary_2

, plus temporary FounderProgram activity.

The later v6-series uses matched random streams for ordinary mating, recombination, mutation and population sampling in the ordinary-two and generator arms. FounderProgram receives a separate random stream.

The intended comparison is therefore:

same founders
same ordinary stochastic biology
same growth schedule
-------------------------------
difference = FounderProgram

v6.2 changes only the FounderProgram's frequency / LD generation law relative to v6.1.

It does not read:

  • the source SFS;
  • source allele frequencies;
  • source polymorphic positions;
  • donor haplotypes;
  • the 32-founder reference.

Instead it uses a theoretical neutral 1/k

frequency grammar and a marginal-preserving Gaussian-copula construction for short-range correlation.

Metric Source 32 founders Ordinary 2 2 + FounderProgram
Segregating sites 16,755 14,467 7,256 14,208
Singleton fraction 23.58% 17.98% 0.85% 11.69%
Doubleton fraction 12.83% 12.23% 0.07% 7.85%
Common variants, MAF ≥ 0.25 26.91% 31.09% 64.58% 39.58%
Nucleotide diversity π
0.000488 0.000470 0.000363 0.000540

Folded-SFS Jensen-Shannon divergence:

ordinary 2 → source       0.31225
generator  → source       0.06158

ordinary 2 → 32 founders  0.24372
generator  → 32 founders  0.03135

On this metric, the v6.2 generator population is roughly 5× closer to the source and roughly 7.8× closer to the 32-founder reference than ordinary two-founder descendants.

The result is not a perfect match. Rare variants remain underrepresented, common variants remain overrepresented, and π

remains somewhat high.

That residual scar is part of the result, not something to tune away after seeing it.

With the current controller:

generation 1  FounderProgram active
generation 2  FounderProgram active
generation 3  inactive
generation 4  permanently silenced
generations 5–19 ordinary inheritance only

The special mechanism therefore acts during the bootstrap and then leaves the population to ordinary inheritance.

dadi

receives only the folded descendant SFS. It is not told founder count, pedigree, FounderProgram state, generated positions/haplotypes, controller history or source haplotypes.

The four arms behave differently:

Population Best AIC model Best AIC Boundary behavior Reading
Source equilibrium snm
256.39 none Correct calibration: equilibrium looks like equilibrium
32-founder reference two_epoch
311.42 none Ordinary finite size-change signal
Ordinary 2 three_epoch
3687.77 best fit hits lower bounds
Extreme bottleneck magnitude is effectively unresolved
2 + FounderProgram three_epoch
2034.84 no best-fit boundary hits
Strong bottleneck/recovery remains detectable, but as a finite conventional history

For ordinary two-founder descent, three_epoch

and two_epoch

are essentially tied (ΔAIC ≈ 0.05

) and their best fits push bottleneck parameters to the optimization floor. The useful conclusion is therefore not the literal fitted magnitude; it is that the SFS demands an extreme contraction beyond what these simple models resolve cleanly.

For the FounderProgram descendants, three_epoch

is preferred. Its best fit is interior:

nuB ≈ 0.00103
nuF ≈ 0.949
recovery factor nuF/nuB ≈ 918

Those are effective-size ratios inside the fitted model, not literal founder counts.

The important contrast is:

ordinary two founders
→ pathological / boundary-limited extreme-bottleneck fit

same two founders + temporary FounderProgram
→ finite, stable bottleneck/recovery fit

This is partial demographic masking, not erasure of the founding event.

The direct SFS result and the blind inference result therefore tell a consistent but nuanced story:

FounderProgram reconstructs a large amount of neutral population-level diversity and moves the descendants strongly toward ordinary many-founder/source populations, while a demographic observer can still detect that something like a severe bottleneck/recovery occurred.

The project uses several population-genetic summaries.

Average pairwise sequence difference per base pair.

It measures total diversity, but two populations can have similar π

and very different frequency structures.

The distribution of allele counts across segregating sites.

Founder bottlenecks strongly distort the SFS, especially by removing rare variants and leaving surviving variants at unusually high frequencies.

Variants observed once or twice in the sampled chromosomes.

These are useful indicators of the rare-variant end of the SFS.

Here, the fraction of segregating variants with minor allele frequency at least 0.25.

Extreme founder populations tend to overrepresent common surviving variants.

A symmetric measure of how different two normalized SFS shapes are.

Lower is closer.

dadi

receives only the descendant folded SFS and fits ordinary demographic models such as equilibrium, population-size change, bottleneck/growth and three-epoch histories.

It is deliberately not told that FounderProgram exists.

Its interpretation is model-dependent. A fitted bottleneck is not a literal founder count.

The information-theory motivation is simple:

archive
  stores many explicit examples

generator
  stores rules capable of producing a distribution of examples

v5 still used an archive-like donor haplotype bank.

v6 removed that bank.

The v6-series stores a 52-byte parameter payload, but that number must not be misrepresented. The generative algorithm itself is additional information. Current experiments report implementation source size as a crude reminder of this cost.

Therefore:

52 bytes of parameters

is not52 bytes for a species

.

The deeper open question is the total irreducible information cost of:

founder genomes
+ algorithm
+ parameters
+ implementation machinery
+ any required functional priors

compared with transporting a conventional genetic archive.

If biological implementation were ever possible, a colonization or conservation architecture might trade some explicit archive size for generative machinery:

many stored genomes
         versus
few living genomes + generator

This repository does not establish which architecture would be safer or smaller in reality.

Demographic inference is conditional on its model of inheritance.

The project demonstrates the general model-boundary point computationally: if the true data-generating process includes an inheritance mechanism outside an ordinary-demography model, an observer can infer a conventional demographic history that is only the best explanation inside the observer's allowed model family.

This is not evidence for alternative human history.

The project asks whether preserving the rules of a population distribution can ever substitute for preserving a large collection of realized genomes.

That question survives even if the current biological mechanism remains fictional.

The current experiments focus primarily on neutral/statistical genetic variation.

A real species also requires:

  • functional alleles;
  • essential conserved regions;
  • regulation and development;
  • deleterious and recessive-load management;
  • epistasis;
  • structural variation;
  • immune-system diversity;
  • fertility;
  • environmental adaptation.

A generator that reproduces neutral population statistics is not automatically a generator for a viable organism or species.

Those questions belong to future work.

.
├── README.md
├── experiments/
│   ├── 001_bootstrap/
│   ├── 002_linked_genomes/
│   ├── 003_blind_inference/
│   ├── 004_dadi/
│   ├── 005_sequence_dadi/
│   ├── 006_embedded_generator/
│   ├── 006.1_generator_frequency/
│   └── 006.2_frequency_calibration/
└── docs/
    └── learning-ledger/

Each experiment should remain reproducible and self-contained where practical. Negative results are retained.

For the scientific argument:

001 → 002 → 003 → 004 → 005 → 006 → 006.1 → 006.2

Do not skip 004_dadi

.

It is the point where the project learned that a flattering inference result is worthless when the synthetic data do not satisfy the assumptions of the measuring instrument.

For concepts rather than chronology, read the project learning ledger first.

**Keep controls visible.****Change one important mechanism at a time when possible.****Define the desired direction before looking at downstream inference.****Separate direct measurements from model-dependent interpretation.****Do not interpret optimizer boundary hits literally.****Do not call effective population size a census founder count.****Do not confuse neutral diversity with functional biological viability.****Count algorithmic machinery when making information/compression claims.****Preserve negative results.**Prefer an ugly result that survives scrutiny to a beautiful result produced by hidden assumptions.

Research state: completed proof-of-principle research pass / exploratory computational biology.

Current endpoint: v6.2 is complete, including blind dadi

inference. This is the intended stopping point for the current research pass.

The main implementation to inspect and reproduce is:

experiments/006.2_frequency_calibration/

The project is intentionally allowed to stop here.

Future work could attack replication across many seeds, LD/IBD/ROH observables, functional viability, stronger forward-genetic models, biological implementation and information limits if there is a reason to reopen it. Those are extensions of the present result, not prerequisites for understanding what this research pass demonstrated.

Treat the founders not merely as genomes, but asinit()

for a population.

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @founder population init 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-terraforming…] indexed:0 read:13min 2026-08-16 ·