When ancestry becomes hard to read

Week 6 built a tree from shared copying error in a handful of witnesses. This week asks a narrower question: what happens to that method as the error rate rises — inside a model simple enough to state completely.

The model, stated completely

A 24-symbol sequence, four-symbol alphabet, is the fixed ancestor.

Each generation: at every position, independently, with fixed probability (the error rate), swap in a different symbol; otherwise leave it alone.

One lineage. No branching, no death, no differential survival.

Ancestor agreement

The fraction of positions in generation g that still match generation 0 — not the immediate parent.

It measures how much of the original signal a reconstruction attempt would still have to work with.

Three rates, three seeds — not one dramatic run

Three fixed error rates. Three fixed seeds each.

A single run would show a shape; it wouldn’t show whether that shape is a property of the rate or an accident of one random sequence.

Anyone can rerun settings.json and get the same nine sequences back.

What a finite run can and cannot show

Agreement never falls to zero — with four symbols per position, an unrelated sequence still matches by chance about a quarter of the time. Every curve settles toward ~0.25, not 0.

A single seed can tick up between two generations, even while the three-seed mean keeps falling.

What the model does not have

  • Selection — no variant is more likely to persist than another
  • Population structure — one lineage, no drift, no bottleneck

Three rates and three seeds cannot locate a general error-rate threshold, in this model or any other, and say nothing about a real biological sequence.