General issues about the internal implementation of Mathematica are discussed in Section 1.12. Given here are brief notes on particular features.
These notes apply to Version 5. Algorithms and other aspects of implementation are subject to change in future versions.
It should be emphasized that these notes give only a rough indication of basic methods and algorithms used. The actual implementation usually involves many substantial additional elements.
Thus, for example, the notes simply say that DSolve solves second-order linear differential equations using the Kovacic algorithm. But the internal code which achieves this is over 60 pages long, includes a number of other algorithms, and involves a great many subtleties.