Before we discuss how to infer ancestral states, I will pause to mention that half a century ago, biologists constructed trees from anatomical and physiological properties called "characters". For example, here's a toy character table for three species, where the two characters considered are whether the species have wings or not, and how many legs the species have. So, this brings us to the problem of trying to reconstruct a phylogeny from a character table. Of course, I don't need Son to swoop in and tell us that this is currently not a well defined problem. In the modern era, constructing a phylogeny from anatomical characters seems crazy in some circumstances. Just imagine trying to construct a coronavirus phylogeny from anatomical characters. If you think for a moment about how we would construct an evolutionary tree from characters, then one idea you might come up with would be to cluster all organisms having the same character on one side of the tree together. For example, if we're considering wings in stick insects, we should probably put all winged stick insects on one side of the tree, and all of the wingless stick insects on the other side of the tree. This strategy is completely reasonable. And, it's in keeping with an over 100 year old postulate, called "Dollo's principle of irreversibility". What this principle states is that evolution is efficient: it doesn't reinvent the same organ over and over again such as insect wings. Yet, when we construct the stick insect phylogeny, we see that wings were gained or lost at seven different times in stick insects alone, shown here by stars. When we then zoom out and construct a phylogeny of all insects, we see that wings have been gained or lost hundreds of times. This may seem like a mystery, but what's going on is that evolution isn't reinventing the wings from scratch. The pathways needed for flight aren't being eliminated completely by eroding into pseudogenes. They're just being used for something else in wingless species; then, they're getting turned back on when they're needed in a winged species to accommodate flight. Accordingly, using genetic data as characters has some merits. We can bypass issues such as these. In fact, if we're given a multiple alignment, then we can just view this alignment as a character table of its own, in which each row corresponds to a species, and each column of the multiple alignment corresponds to an individual character with up to either four or 20 different values, depending on whether we're looking at a multiple alignment of DNA (or RNA), or amino acids. So, the question then, is how to take this character table of sorts, constructed from the multiple alignment, in order to reconstruct ancestral states.