This is an introductory text on the basics of complex dynamics in one dimension. The intended audience includes undergraduate students of mathematics or other technical disciplines with a strong background in calculus and some exposure (or willingness to explore) more advanced topics.
Obviously, some knowledge of the basics of complex variables is necessary to study complex dynamics but one does not need to fully digest the complete body of knowledge of complex variables in order to follow the topics in this text. One just needs a basic understanding of the algebra and geometry of the complex plane, together with an understanding of how polynomial functions work. I recommend studying chapters 1 and 2 of A First Course in Complex Analysis by Mathias Beck et. al. When moving beyond the dynamics of polynomials, some information from chapter 3 would also be useful - in particular, section 3.1 on Möbius transformations.
Topics in the text include
- The iteration of functions \(f:\mathbb C \to \mathbb C\)
- Julia sets of quadratic functions, higher order polynomials, and rational functions
- The Mandelbrot set and other bifurcation loci
- Motivation for iteration, such as Newton's method
Real iteration is also discussed to ease the entrance into the study of dynamical systems. However, the topics in real iteration are chosen only to facilitate the study of complex iteration. Important topics in real iteration (such as the Schwarzian derivative, the period three theorem, and the Sharkovski ordering) are not discussed at all. Symbolic dynamics makes only a hidden appearance through the study of the doubling map, as that helps us understand the complex square function.
Another important aspect of this text is its emphasis on computation. We introduce Python code that runs live in the online version to generate images of many of the sets that we'll meet. Such code is generally quite simple using basic constructs such as function definition, conditionals, and iterative loops.
This text was written with PreTeXt which makes groovy things like live Python code and nicely formatted online and print versions easy.