So recently, I've been working on my IB Math IA about Infinite Monkey Theorem, and in my search to try and figure out some math principles that could potentially lead me to be able to derive an equation that could find the expected (mean) number of keystrokes that it would take $\text{x}$ amount of monkeys typing a string $\text{n}$ characters long, I found this forum post where someone makes the following function, assuming a string of length 18, an alphabet with 28 characters, and $n=28^{18}$.
$$18p\Sigma_{k=1}^nk \text{ seconds }\\\rightarrow 18p\frac{n(n+1)}{2} \text{ seconds }\\\rightarrow 18\frac{(n+1)}{2} \text{ seconds}$$
With this, I want to have some direction as to the following two questions.
- What principles do they use to create the original function? I want to make my own derivation of the equation so I want to understand how they went about solving the problem.
- Original function being $18p\Sigma_{k=1}^nk \text{ seconds }$
- How could I add a variable to find the number of keystrokes it might take for multiple monkeys to type the string? I want the equation to be a bit more complex, as it is for my Math IA and I feel that just using that equation doesn't have enough mathematical concepts to warrant a whole HL Math IA.