Each parent contributes one allele at random to every offspring — the same coin-flip that happens during meiosis when homologous chromosomes segregate. Crossing genotype P1 × P2 produces a Punnett square of four equally-likely allele combinations; the panel counts, at every generation, how many simulated offspring actually land in each genotype bucket, so you can watch sampling noise shrink toward Mendel's predicted ratio as the population grows.
P(AA) = f(A|P1)·f(A|P2)
P(Aa) = f(A|P1)·f(a|P2) + f(a|P1)·f(A|P2)
P(aa) = f(a|P1)·f(a|P2)
- Genotype — AA/Aa/aa set each parent's own allele pair; classic monogenic-disease crosses are Aa × Aa (carrier × carrier, 25% affected) and Aa × aa (carrier × affected, 50% affected).
- Offspring per generation — population size drawn each tick; small populations drift visibly away from the Punnett-square prediction, large ones converge on it — the same law of large numbers that makes real pedigree counts noisy in small families.
- Dominance — Complete dominance renders Aa the same colour as AA (a symptom-free carrier); Incomplete dominance blends the two allele colours, showing an intermediate phenotype the way traits like sickle-cell trait or familial hypercholesterolemia dosage can behave.
- Carrier / affected frequency — the fraction of the visible population that is heterozygous versus homozygous recessive, the two numbers a genetic counsellor actually reports to prospective parents.
Real-world relevance: this is the same arithmetic used in genetic counselling for monogenic conditions such as cystic fibrosis or Tay-Sachs disease — given two parents' genotypes, the Punnett square gives the exact probability distribution for a child's genotype before any pregnancy occurs.