# organisms.frink

```/**     A puzzle from Robin Houston:    Someone posted a really nice mathematical question on work slack.    We have a population of independent single-called organisms in a dish. At    each generation, each of them:    • with probability 0.4, dies    • otherwise, divides into twon    Initially the population is 1. What is the probability that the colony eventually becomes extinct?    https://twitter.com/robinhouston/status/1565622812924121088 */ trials = million gens = 15 alive = 0 largestDead = 0 TRIAL: for count = 1 to trials {    largest = 0    p = 1        GEN:    for gen = 1 to gens    {       if p > largest          largest = p              if p == 0       {          if largest > largestDead             largestDead = largest                    next TRIAL       }              pnew = 0       for n = 0 to p-1       {          if randomFloat[0,1] > 0.4             pnew = pnew + 2       } //      println["\$gen \$pnew"]       p = pnew    }    alive = alive + 1 } println["\$alive out of \$trials"] println["Probability of extinction is " + (1 - (alive/trials))] println["Largest dead is \$largestDead"]```