Throughout, the emphasis has been placed on explaining the main ideas rather than the most general results available. As a result, several methods are presented in terms of concrete examples that simplify technical details, and theorems are stated in a form that facilitates the understanding of their proof at the cost of sacrificing some generality. Each chapter concludes with numerous exercises of various levels of difficulty aimed to exemplify the material, as well as to expose the readers to more advanced topics and point them to further reading sources.
Université de Montréal, Montréal, QC, Canada