In general the approach is to divide time between now and the option's expiration into "N" discrete periods. At the specific time "n", the model has a finite number of outcomes at time "n" + 1 such that every possible change in the state of the world between "n" and "n" + 1 is captured in a branch. This process is iterated until every possible path between "n" = 0 and "n" = "N" is mapped. Probabilities are then estimated for every "n" to "n" + 1 path. The outcomes and probabilities flow backwards through the tree until a fair value of the option today is calculated.